| typedef struct tagBITMAPFILEHEADER { WORD bfType; //文件类型,必须是0x424D,即字符串"BM" DWORD bfSize; //文件大小,包括BITMAPFILEHEADER的14个字节 WORD bfReserved1; //保留字 WORD bfReserved2; //保留字 DWORD bfOffBits; //从文件头到实际的位图数据的偏移字节数 } BITMAPFILEHEADER; |
| typedef struct tagBITMAPINFOHEADER { DWORD biSize; //本结构的长度,为40 LONG biWidth; //图象的宽度,单位是象素 LONG biHeight; //图象的高度,单位是象素 WORD biPlanes; //必须是1 WORD biBitCount; //表示颜色时要用到的位数,1(单色), 4(16色), 8(256色), 24(真彩色) DWORD biCompression; //指定位图是否压缩,有效的值为BI_RGB,BI_RLE8,BI_RLE4,BI_BITFIELDS等,BI_RGB表示不压缩 DWORD biSizeImage; //实际的位图数据占用的字节数,即 biSizeImage=biWidth’ × biHeight,biWidth’是biWidth 按照4的整倍数调整后的结果 LONG biXPelsPerMeter; //目标设备的水平分辨率,单位是每米的象素个数 LONG biYPelsPerMeter; //目标设备的垂直分辨率,单位是每米的象素个数 DWORD biClrUsed; //位图实际用到的颜色数,0表示颜色数为2biBitCount DWORD biClrImportant; //位图中重要的颜色数,0表示所有颜色都重要 } BITMAPINFOHEADER; |
| typedef struct tagRGBQUAD { BYTE rgbBlue; //蓝色分量 BYTE rgbGreen; //绿色分量 BYTE rgbRed; //红色分量 BYTE rgbReserved; //保留值 } RGBQUAD; |