Alpha 混合 用來顯示 Alpha 位陣圖,這是具有透明或半透明圖元的點陣圖。 除了紅色、綠色和藍色色板之外,Alpha 位圖中的每個圖元都有稱為其 Alpha 色板的透明度元件。 Alpha 通道通常包含與色彩通道相同數量的位元。 例如,8 位 Alpha 色板可以代表 256 個透明度層級,從 0(整個點陣圖為透明)到 255(整個位陣圖不透明)。
Alpha 混合機制是藉由呼叫 AlphaBlend,該程序會參考 BLENDFUNCTION 結構。
每個圖元的 Alpha 值僅支援 32 bpp BI_RGB。 此公式定義為:
typedef struct {
BYTE Blue;
BYTE Green;
BYTE Red;
BYTE Alpha;
};
這會以記憶體表示,如下表所示。
31:24
23:16
15:08
07:00
阿爾法
紅
綠
藍
位圖也可能以套用至整個點陣圖的透明度因數來顯示。 任何位圖格式都可以通過設置 SourceConstantAlpha 在 BLENDFUNCTION 結構中,以全域性常數 Alpha 值顯示。 全域常數 Alpha 值具有 256 個透明度層級,從 0(整個點陣圖完全透明)到 255(整個點陣圖完全不透明)。 全域常數 Alpha 值會與每圖元 Alpha 值結合。
如需範例,請參閱 Alpha 混合點陣圖。