BITMAP结构定义了位图的类型,宽度,高度,颜色格式和位值。
typedef struct tagBITMAP { // bm
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP;
会员
bmType
指定位图类型。该成员必须为零。
bmWidth
指定位图的宽度(以像素为单位)。宽度必须大于零。
bmHeight
指定位图的高度(以像素为单位)。高度必须大于零。
bmWidthBytes
指定每条扫描行中的字节数。该值必须可被2整除,因为Windows假定位图的位值形成字对齐的数组。
bmPlanesca
指定颜色平面的计数。
bmBitsPixel
指定指示像素颜色所需的位数。
bmBits
指向位图的位值的位置。bmBits成员必须是指向字符(1字节)值数组的长指针。
备注
当前使用的位图格式是单色和彩色。单色位图使用一位一平面格式。每次扫描都是32位的倍数。
针对高度为【n】的单色位图,扫描如下:
扫描0
扫描1
.
.
.
扫描n-2
扫描n-1
单色设备上的像素为黑色或白色。如果位图中的相应位为1,则将像素设置为前景色;如果位图中的相应位为零,则将像素设置为背景颜色。
具有RC_BITBLT设备功能的所有设备都支持位图。有关详细信息,请参阅GetDeviceCaps.
每个设备都有独特的颜色格式。要将位图从一个设备传输到另一个设备,请使用GetDIBits和SetDIBits功能。
也可以看看