D2D1_COMPOSITE_MODE 枚举 (d2d1_1.h)

用于指定所有 Direct2D 混合操作的混合模式。

语法

typedef enum D2D1_COMPOSITE_MODE {
  D2D1_COMPOSITE_MODE_SOURCE_OVER = 0,
  D2D1_COMPOSITE_MODE_DESTINATION_OVER = 1,
  D2D1_COMPOSITE_MODE_SOURCE_IN = 2,
  D2D1_COMPOSITE_MODE_DESTINATION_IN = 3,
  D2D1_COMPOSITE_MODE_SOURCE_OUT = 4,
  D2D1_COMPOSITE_MODE_DESTINATION_OUT = 5,
  D2D1_COMPOSITE_MODE_SOURCE_ATOP = 6,
  D2D1_COMPOSITE_MODE_DESTINATION_ATOP = 7,
  D2D1_COMPOSITE_MODE_XOR = 8,
  D2D1_COMPOSITE_MODE_PLUS = 9,
  D2D1_COMPOSITE_MODE_SOURCE_COPY = 10,
  D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY = 11,
  D2D1_COMPOSITE_MODE_MASK_INVERT = 12,
  D2D1_COMPOSITE_MODE_FORCE_DWORD = 0xffffffff
} ;

常量

 
D2D1_COMPOSITE_MODE_SOURCE_OVER
值: 0
标准源超过目标混合模式。
D2D1_COMPOSITE_MODE_DESTINATION_OVER
值:1
目标在源上呈现。
D2D1_COMPOSITE_MODE_SOURCE_IN
值: 2
针对目标像素执行源像素的逻辑剪辑。
D2D1_COMPOSITE_MODE_DESTINATION_IN
值: 3
D2D1_COMPOSITE_MODE_SOURCE_IN运算的反函数。
D2D1_COMPOSITE_MODE_SOURCE_OUT
值: 4
这是D2D1_COMPOSITE_MODE_SOURCE_IN的逻辑反函数。
D2D1_COMPOSITE_MODE_DESTINATION_OUT
值: 5
D2D1_COMPOSITE_MODE_DESTINATION_IN的逻辑反函数。
D2D1_COMPOSITE_MODE_SOURCE_ATOP
值: 6
在目标像素所在的目标上写入源像素。
D2D1_COMPOSITE_MODE_DESTINATION_ATOP
值: 7
D2D1_COMPOSITE_MODE_SOURCE_ATOP的逻辑反函数。
D2D1_COMPOSITE_MODE_XOR
值: 8
源与目标反转。
D2D1_COMPOSITE_MODE_PLUS
值: 9
对通道组件求和。
D2D1_COMPOSITE_MODE_SOURCE_COPY
值: 10
源将复制到目标;忽略目标像素。
D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY
值: 11
等效于 D2D1_COMPOSITE_MODE_SOURCE_COPY,但源边界外的像素保持不变。
D2D1_COMPOSITE_MODE_MASK_INVERT
值: 12
目标颜色根据源掩码进行反转。
D2D1_COMPOSITE_MODE_FORCE_DWORD
值: 0xffffffff

注解

下图显示了图像不透明度为 1.0 或 0.5 的每个模式的示例。

不透明度设置为 1.0 或 0.5 的每个模式的示例图像。

这些枚举值的解释可能略有不同,具体取决于该值的使用位置。

  • 使用复合效果:

    D2D1_COMPOSITE_MODE_DESTINATION_COPY 等效于输入反转的 D2D1_COMPOSITE_MODE_SOURCE_COPY

  • 作为 ID2D1DeviceContext::D rawImage 的参数: D2D1_COMPOSITE_MODE_DESTINATION_COPY 是无操作,因为目标已在所选目标中。

示例代码

有关使用复合模式的示例,请下载 Direct2D 复合效果模式示例

要求

要求
最低受支持的客户端 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用]
标头 d2d1_1.h

另请参阅

ID2D1DeviceContext::D rawImage