BMP文件结构

BMP图像文件被分成4个部分:位图文件头(BitmapFileHeader)、位图信息头(BitmapInfoHeader)、颜色表(C010rMap)和位图数据(即图像数据,DataBits或DataBody)

BMP文件结构

 如上图所示:

第1部分为位图文件头BITMAPFILEHEADER,是一个结构体类型,该结构的长度是固定的,为14个字节。主要包含位图文件的类型,大小以及到数据部分的偏移字节数。

第2部分为位图信息头BITMAPINFOHEADER,也是一个结构体类型的数据结构,该结构的长度也是固定的,为40个字节(WORD为无符号16位整数,DWORD为无符号32位整数,LONG为32位整数)。主要包含位图的宽高、每个像素所占的位数、位图的压缩类型,实际位图数据所占的字节数等等。

第3部分为颜色表颜色表实际上是一个RGBQUAD结构的数组,数组的长度由biClrUsed(在第2部分中)指定(如果该值为零,则由biBiCount(在第2部分中)指定,即2的biBitCount次幂个元素)。RGB各个颜色的分量。

第4部分是位图数据,即图像数据。