BITMAPINFO 结构 (wingdi.h)

BITMAPINFO 结构定义 DIB 的尺寸和颜色信息。

语法

typedef struct tagBITMAPINFO {
  BITMAPINFOHEADER bmiHeader;
  RGBQUAD          bmiColors[1];
} BITMAPINFO, *LPBITMAPINFO, *PBITMAPINFO;

成员

bmiHeader

一个 BITMAPINFOHEADER 结构,其中包含有关颜色格式维度的信息。

.

bmiColors[1]

bmiColors 成员包含以下项之一:

  • RGBQUAD 数组。 构成颜色表的数组的元素。
  • 一个由 16 位无符号整数构成的数组,指定当前实现的逻辑调色板中的索引。 对于使用 DIB 的函数,允许这种使用 bmiColors 。 当 bmiColors 元素包含已实现逻辑调色板的索引时,它们还必须调用以下位图函数:

    CreateDIBitmap

    CreateDIBPatternBrush

    CreateDIBSection

    CreateDIBSectioniUsage 参数必须设置为 DIB_PAL_COLORS。

数组中的条目数取决于 BITMAPINFOHEADER 结构的 biBitCountbiClrUsed 成员的值。

bmiColors 表中的颜色按重要性顺序显示。 有关详细信息,请参阅“备注”部分。

备注

DIB 由两个不同的部分组成:描述位图的尺寸和颜色的 BITMAPINFO 结构,以及定义位图像素的字节数组。 数组中的位打包在一起,但每个扫描行都必须用零填充才能在 LONG 数据类型边界上结束。 如果位图的高度为正值,则位图为自下而上的 DIB,其原点为左下角。 如果高度为负值,则位图为自上而下的 DIB,其原点为左上角。

当位图数组紧跟 BITMAPINFO 标头时,将打包位图。 打包的位图由单个指针引用。 对于打包的位图,在使用 DIB_PAL_COLORS 模式时,必须将 biClrUsed 成员设置为偶数,以便 DIB 位图数组在 DWORD 边界上启动。

注意  

如果要将位图存储在文件中或传输到其他应用程序,则 bmiColors 成员不应包含调色板索引。

除非应用程序具有位图的独占使用和控制权,否则位图颜色表应包含显式 RGB 值。

 

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 wingdi.h (包括 Windows.h)

另请参阅

BITMAPINFOHEADER

位图结构

位图概述

CreateDIBPatternBrush

CreateDIBSection

CreateDIBitmap

RGBQUAD