BITMAP 结构
BITMAP framework 定义了一个逻辑位图**.**的高度、宽度、颜色和格式位值
typedef struct tagBITMAP { /* bm */
int bmType;
int bmWidth;
int bmHeight;
int bmWidthBytes;
BYTE bmPlanes;
BYTE bmBitsPixel;
LPVOID bmBits;
} BITMAP;
参数
bmType
指定位图类型。与逻辑位图,此成员必须为 0。bmWidth
以像素为单位指定位图的宽度。此宽度都必须大于 0。bmHeight
光栅行指定位图的高度。该高度都必须大于 0。bmWidthBytes
在每光栅行指定字节数。此值必须是偶数,因为图形设备 (GDI)接口,假设位图的位值窗体整数 (2 字节) 值。换言之, bmWidthBytes * 8 必须是下的倍数 16 大于或等于获取的值,当 bmWidth 成员乘以 bmBitsPixel 成员时。bmPlanes
在位图指定颜色产生的数目。bmBitsPixel
在必要的每帧的结束平面指定相邻颜色的位数定义像素。bmBits
指向位值的位置位图的。bmBits 成员必须是较长的指针为 1 字节的值。
备注
当前使用的位图格式是纯色和颜色。单色位图,使用 1 位 1 平面格式。每个扫描是 16 位的多个。
扫描按如下方式组织为高度 n一单色位图:
Scan 0
Scan 1
.
.
.
Scan n-2
Scan n-1
在一个纯色设备的像素是黑色或白色。如果在位图中对应的位均为 1 像素,打开 (白色)。如果在位图中对应的位均为 0 像素,关闭 (黑色)。
所有设备支持具有 bit 设置的 RC_BITBLT 在 CDC::GetDeviceCaps 成员函数的 RASTERCAPS 索引的位图。
每个设备具有自己的唯一颜色格式。为了从计算机调用位图到另一个,请使用 GetDIBits 和 SetDIBits windows 函数。
要求
Header: wingdi.h