共用方式為


ID2D1CommandSink1::SetPrimitiveBlend1 方法

設定新的基本混合模式。

語法

HRESULT SetPrimitiveBlend1(
   D2D1_PRIMITIVE_BLEND primitiveBlend
);

參數

primitiveBlend

類型: D2D1_PRIMITIVE_BLEND

將套用至後續基本類型的基本混合。

傳回值

類型: HRESULT

如果方法成功,則會傳回 S_OK。 如果失敗,則會傳回 HRESULT 錯誤碼。

備註

混合模式

對於別名轉譯 (,除了 MIN 模式) 以外,輸出值 O 會根據基本類型涵蓋目的地圖元值的量,以線性方式插補 混合 (S、D) 和目的地圖元值來計算。

下表顯示別名和反鋸齒混合的基本混合模式。 資料表中列出的方程式會使用這些元素:

  • O = 輸出
  • S = 來源
  • SA = 來源 Alpha
  • D = 目的地
  • DA = 目的地 Alpha
  • C = 圖元涵蓋範圍
基本混合模式 別名混合 反鋸齒混合 描述
D2D1_PRIMITIVE_BLEND_SOURCE_OVER O = (S + (1 SA) * D) * C + D * (1 C) O = S * C + D * (1 SA *C) 標準來源過度目的地混合模式。
D2D1_PRIMITIVE_BLEND_COPY O = S * C + D * (1 C) O = S * C + D * (1 C) 來源會複製到目的地;會忽略目的地圖元。
D2D1_PRIMITIVE_BLEND_MIN O = 最小 (S + 1-SA、D) O = 最小 (S * C + 1 SA *C,D) 產生的圖元值會使用來源和目的地圖元值的最小值。 可在 Windows 8 和更新版本中使用。
D2D1_PRIMITIVE_BLEND_ADD O = (S + D) * C + D * (1 C) O = S * C + D 產生的圖元值是來源和目的地圖元值的總和。 可在 Windows 8 和更新版本中使用。

具有不同不透明度和背景的 direct2d 基本混合模式圖例。

具有不同不透明度和背景的基本混合模式圖例。

基本混合會套用至內容上繪製的所有基本類型,除非這會在DrawImage API 上使用compositeMode參數覆寫。

基本混合適用于在內容上繪製之任何基本類型的內部。 在 DrawImage的情況下,這將會由影像矩形、位移和世界轉換所隱含。

如果基本混合不是 D2D1_PRIMITIVE_BLEND_OVER ,則會關閉 ClearType 轉譯。 如果應用程式在這些模式中明確強制 ClearType 轉譯,繪圖內容將會處於錯誤狀態。 D2DERR_WRONG_STATE會從 EndDrawFlush傳回。

規格需求

需求
最低支援的用戶端
Windows 8.1 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器
Windows Server 2012 R2 [傳統型應用程式 |UWP 應用程式]
最低支援電話
Windows Phone 8.1 [Windows Phone Silverlight 8.1 和 Windows 執行階段 apps]

另請參閱

ID2D1CommandSink1