概述
Bitmap由四个部分组成,分别为:
1.位图文件头:
结构体如下:
typedef struct tagBITMAPFILEHEADER {
WORD
bfType;
//文件类型("BM")
DWORD
bfSize;
//文件大小
WORD
bfReserved1;
//保留字段0
WORD
bfReserved2;
//保留字段0
DWORD
bfOffBits;
//图像文件到文件头起始的偏移量
} BITMAPFILEHEADER, FAR *LPBITMAPFILEHEADER, *PBITMAPFILEHEADER;
2.位图信息头:
结构体如下:
typedef struct tagBITMAPINFOHEADER {
DWORD
biSize;
//本结构体占用大小
LONG
biWidth;
//图像宽度(单位:像素)
LONG
biHeight;
//图像高度(单位:像素)
WORD
biPlanes;
//设备上图像平面数,必须为1
WORD
biBitCount;
//存储每个像素需要的二进制位数(1:单色;4:16色;8:256色;16:64K色(高彩色);24:16M色(真彩色);32:4096M色(增强型真彩色))
DWORD
biCompression;
//是否压缩存储图像数据
DWORD
biSizeImage;
//指定图像大小(单位:字节)
LONG
biXPelsPerMeter;
//水平方向分辨率
LONG
biYPelsPerMeter;
//竖直方向分辨率
DWORD
biClrUsed;
//实际图像使用颜色表中的颜色数
DWORD
biClrImportant;
//重要的颜色数(0表示所有都重要)
} BITMAPINFOHEADER, FAR *LPBITMAPINFOHEADER, *PBITMAPINFOHEADER;
3.调色板:
结构体如下:
typedef struct tagRGBQUAD {
BYTE
rgbBlue;
//蓝色分量
BYTE
rgbGreen;
//绿色分量
BYTE
rgbRed;
//红色分量
BYTE
rgbReserved;
//保留值
} RGBQUAD;
4.位图数据:
实际位图数据是一片连续的存储区域,其中保存着图像中每个像素的灰度(颜色)信息。
(1)256色灰度图像:图像数据就是该像素的实际灰度,1个像素需要1个字节来表示。
(2)索引图像:图像数据就是该像素颜色在调色板中的索引值。
(3)真彩色图:图像数据就是实际的RGB值,1个像素需要3个字节来表示。
最后
以上就是怡然火为你收集整理的认识BitMapBitmap由四个部分组成,分别为:的全部内容,希望文章能够帮你解决认识BitMapBitmap由四个部分组成,分别为:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复