Alpha 混合 (Windows GDI)
Alpha 混合 用于显示 alpha 位图,它是具有透明或半透明像素的位图。 除了红、绿、蓝三色通道外,alpha 位图中的每个像素都有一个称为 alpha 通道的透明度组件。 alpha 通道通常包含与颜色通道一样多的位。 例如,8 位 alpha 通道可以表示 256 个透明度级别,从 0 (整个位图透明) 到 255, (整个位图不透明) 。
通过调用引用 BLENDFUNCTION 结构的 AlphaBlend 来调用 Alpha 混合机制。
每个像素的 Alpha 值仅支持 32 bpp BI_RGB。 此公式定义为:
typedef struct {
BYTE Blue;
BYTE Green;
BYTE Red;
BYTE Alpha;
};
这在内存中表示,如下表所示。
31:24
23:16
15:08
07:00
Alpha
Red
绿色
蓝色
还可以使用应用于整个位图的透明度因子显示位图。 通过在 BLENDFUNCTION 结构中设置 SourceConstantAlpha,可以使用全局常量 alpha 值显示任何位图格式。 全局常量 alpha 值具有 256 个透明度级别,从 0 (整个位图完全透明) 到 255 (整个位图完全不透明) 。 全局常量 alpha 值与每像素 alpha 值组合在一起。
有关示例,请参阅 Alpha 混合位图。