GetObject(hBitmap, sizeof(BITMAP), (LPSTR)&bmp); 获取 HBITMAP 句柄包含的位图信息结构,不包含像素数据内容。
typedef struct tagBITMAP {
LONG bmType; // 位图类型,必须为 0
LONG bmWidth; // 位图宽度(以像素为单位)
LONG bmHeight; // 位图高度(以像素为单位)
LONG bmWidthBytes; // 每行字节数
WORD bmPlanes; // 颜色平面数
WORD bmBitsPixel; // 每个像素占用的位数
LPVOID bmBits; // 指向像素数据的指针
} BITMAP;
======================================= BMP 文件的构成 =====================================================
》》第一部分: 文件头 《《
位图文件头
typedef struct tagBITMAPFILEHEADER {
UINT bfType;
DWORD bfSize;
UINT bfReserved1;
UINT bfReserved2;
DWORD bfOffBits;
}BITMAPFILEHEADER;
》》第二部分:位图信息头《《
typedef struct tagBITMAPINFOHEADER {
DWORD biSize; // 结构体的大小(以字节为单位) LONG biWidth; // 位图的宽度(以像素为单位) LONG biHeight; // 位图的高度(以像素为单位) WORD biPlanes; // 颜色平面数(必须为 1) WORD biBitCount; // 每个像素占用的位数 DWORD biCompression; // 压缩类型 DWORD biSizeImage; // 图像数据的大小(以字节为单位) LONG biXPelsPerMeter; // 水平分辨率(每米的像素数) LONG biYPelsPerMeter; // 垂直分辨率(每米的像素数) DWORD biClrUsed; // 使用的颜色数 DWORD biClrImportant; // 重要的颜色数 } BITMAPINFOHEADER;
》》第三部分:像素数据 Bits《《
阵 列 数 据
标签:typedef,WORD,struct,有关,LONG,像素,信息,格式,DWORD From: https://www.cnblogs.com/oujian/p/18673843