Alpha 混合 (Windows GDI)

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

Alpha

紅色

綠色

藍色

點陣圖也可能以套用至整個點陣圖的透明度因數來顯示。 您可以在BLENDFUNCTION結構中設定SourceConstantAlpha,以全域常數 Alpha 值顯示任何點陣圖格式。 全域常數 Alpha 值有 256 個透明度層級,從 0 (整個點陣圖完全透明) 到 255 (整個點陣圖完全不透明) 。 全域常數 Alpha 值會與每圖元 Alpha 值結合。

如需範例,請參閱 Alpha 混合點陣圖