我在 Direct2D 中绘制位图。位图利用透明度(Alpha 通道)。
混合看起来不对。
作为测试,我加载了一个透明度为 50% 的纯黑色 png 图像,并将其绘制在白色背景上。结果是红色、绿色和蓝色值为 127 (0x7F7F7F) 的像素。这表明 Direct2D 的混合忽略了 gamma 并将颜色值视为线性。
(位图使用常规的 sRGB 颜色空间,每像素 32 位,红色、绿色、蓝色和 Alpha 各 8 位)。它们以 GUID_WICPixelFormat32bppPBGRA 格式加载。
在 sRGB 中,黑白之间的混合为 186 (0xBABABA)。这是我想要的理想结果。
Direct2D 可以相对于 gamma 显示透明度吗?我该怎么做?任何帮助表示赞赏。