BMP位图文件格式
2015-03-10 09:48
232 查看
BMP位图是比较简单的图像文件格式,可以用几个数据结构来描述。
1 .typedef struct tagBITMAPFILEHEADER {//位图文件头
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;//数据开始的偏移量
} BITMAPFILEHEADER;
2. typedef struct tagBITMAPINFOHEADER{//位图信息头
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER;
3. typedef struct tagRGBQUAD {//调色板
BYTE rgbBlue; //该颜色的蓝色分量
BYTE rgbGreen; //该颜色的绿色分量
BYTE rgbRed; //该颜色的红色分量
BYTE rgbReserved; //保留值
} RGBQUAD;
4.位图数据
a.按照从下到上,从左到右方向扫描数据,显示的时候要注意调整好顺序。
b.每一行数据按照4字节对齐。如果没有注意,会导致显示的图片错误。
normalizedWidth=WIDTHBYTES(bmiHeader.biWidth*bmiHeader.biBitCount);//使用宏来获取归一化的行宽度
1 .typedef struct tagBITMAPFILEHEADER {//位图文件头
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;//数据开始的偏移量
} BITMAPFILEHEADER;
2. typedef struct tagBITMAPINFOHEADER{//位图信息头
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER;
3. typedef struct tagRGBQUAD {//调色板
BYTE rgbBlue; //该颜色的蓝色分量
BYTE rgbGreen; //该颜色的绿色分量
BYTE rgbRed; //该颜色的红色分量
BYTE rgbReserved; //保留值
} RGBQUAD;
4.位图数据
a.按照从下到上,从左到右方向扫描数据,显示的时候要注意调整好顺序。
b.每一行数据按照4字节对齐。如果没有注意,会导致显示的图片错误。
normalizedWidth=WIDTHBYTES(bmiHeader.biWidth*bmiHeader.biBitCount);//使用宏来获取归一化的行宽度
相关文章推荐
- BMP位图文件的存储格式
- bmp文件格式中rgb555与rgb888之间的转换,24位与16位位图的转换
- 位图文件(BMP)格式分析以及程序实现
- C++中DDB与DIB位图 与 BMP文件格式
- 位图(BMP)文件格式(一)
- 位图文件(BMP)格式以及Linux下C程序实现
- BMP位图文件的存储格式
- 如何将位图格式图片文件(.bmp)生成geotiff格式图片?
- bmp位图文件格式
- <MFC笔记>BMP位图文件的格式及其操作
- 如何将位图格式图片文件(.bmp)生成geotiff格式图片?
- 位图文件(BMP)格式分析
- bmp位图的文件格式
- 位图文件(BMP)格式分析以及程序实现[转载]
- BMP位图文件的存储格式
- Windows位图和调色板,bmp文件格式
- BMP位图文件格式分析
- 位图文件(BMP)格式分析以及程序实现
- [原]BMP位图 转换 透明 TGA图像 - 增加 alpha通道 -TGA文件格式初解
- 位图(bmp)文件格式分析