BITMAPCOREINFO 結構 (wingdi.h)
BITMAPCOREINFO 結構會定義 DIB 的維度和色彩資訊。
語法
typedef struct tagBITMAPCOREINFO {
BITMAPCOREHEADER bmciHeader;
RGBTRIPLE bmciColors[1];
} BITMAPCOREINFO, *LPBITMAPCOREINFO, *PBITMAPCOREINFO;
成員
bmciHeader
BITMAPCOREHEADER 結構,其中包含 DIB 維度和色彩格式的相關信息。
bmciColors[1]
指定 RGBTRIPLE 結構的數位,以定義點陣圖中的色彩。
備註
DIB 包含兩個部分:描述位圖維度和色彩的 BITMAPCOREINFO 結構,以及定義點陣圖圖元的位元組陣列。 陣列中的位會封裝在一起,但每個掃描行都必須填補零,以結束 於LONG 界限。 點陣圖的原點是左下角。
BITMAPCOREHEADER 結構的 bcBitCount 成員會決定定義每個圖元和點陣陣圖中色彩數目上限的位數。 這個成員可以是下列其中一個值。
值 | 意義 |
---|---|
1 | 位圖是單色,而 bmciColors 成員包含兩個專案。 位圖陣陣中的每個位都代表圖元。 如果位清楚,圖元會顯示為 bmciColors 數據表中第一個專案的色彩;如果已設定位,則圖元具有數據表中第二個專案的色彩。 |
4 | 位圖最多有 16 種色彩,而 bmciColors 成員最多包含 16 個專案。 點陣圖中的每個像素都會以4位索引來表示色彩數據表。 例如,如果點陣圖中的第一個字節是0x1F,則位元組代表兩個圖元。 第一個像素包含第二個表格專案中的色彩,而第二個圖元則包含第十六個數據表專案中的色彩。 |
8 | 位圖最多有 256 種色彩,而 bmciColors 成員最多包含 256 個專案。 在此情況下,陣列中的每個位元組都代表單一圖元。 |
24 | 位圖最多有 2 個 (24 個) 色彩,而 bmciColors 成員為 NULL。 位圖陣列中的每個三位元組三元分別代表圖元的藍色、綠色和紅色的相對濃度。 |
bmciColors 數據表中的色彩應該會依重要性順序出現。
或者,對於使用 DIB 的函式, bmciColors 成員可以是 16 位無符號整數的陣列,可指定目前實現邏輯調色盤的索引,而不是明確的 RGB 值。 在此情況下,使用位圖的應用程式必須呼叫 DIB 函式, ( CreateDIBitmap、 CreateDIBPatternBrush 和 CreateDIBSection ) , 並將 iUsage 參數設定為 DIB_PAL_COLORS。
注意
如果點圖要儲存在檔案中或傳送至另一個應用程式, 則 bmciColors 成員不應包含調色盤索引。 除非應用程式具有位圖的獨佔用途和控制,否則點圖色彩表格應該包含明確的 RGB 值。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
標頭 | wingdi.h (包含 Windows.h) |