BMP的编码格式

bmp的编码格式:
Bmpfileiheader 
BMP的文件信息:   文件开头的14个字节 
WORD      BMPId;BMP文件标志,其值固定为0x4d42,即“BM”   
DWORD     FileSize;BMP文件大小,以字节为单位   
WORD      Reserved1;BMP文件保留字,必须为0   
WORD      Reserved2;BMP文件保留字,必须为0   
DWORD     ImageOffset;图像数据的起始位置相对于文件开头的偏移量 

Bmpinfoheader     文件信息之后的40个字节 

DWORD   HeaderSize;BMP图像信息大小(40或12),以字节为单位 
DWORD   ImageWidth;BMP图像宽度,以像素为单位 
DWORD   ImageHeight;BMP图像高度,以像素为单位 
WORD         EquipLevel;目标设备的级别(色彩平面数),固定为1 
WORD         BitsPerPixel;每个像素所需要的位数,1,4,8,24 
DWORD   EncodeType;   压缩类型,0(不压缩),1(BI_RLE8),2(BI_RLE4) 
DWORD   ImageSize;   BMP位图大小,以字节为单位 
DWORD   XPixelPerMeter设备水平分辨率(每米像素数) 
DWORD   YPixelPerMeter设备垂直分辨率(每米像素数) 
DWORD   ColorUsed实际使用色彩数目,若为0,则由位数定 
DWORD   ColorImportant图像中重要的色彩数目。为0,表示调色板内所有的颜色都是重要的   

调色板数据紧接在图像信息之后,用于说明位图的颜色,它有个表项,每个表项是个结构体,确定了一种颜色,每个结构体是由4个域组成: 
BYTE   rgbBlue;  
BYTE   rgbGreen; 
BYTE   rgbRed; 
BYTE   rgbReserved 为0;

调色板中表项的个数由图像所使用的颜色数决定: 若不是真彩色图像,表项的个数与图像使用的颜色数相同, 每个表项对应了一种颜色(如00,FF,00,00表示纯绿色); 若图像为真彩色, 每个像素所占的位数BitsPerPixel=24,则 图像数据的每3个字节代表一个像素,这3个字节分别定义 了像素颜色中蓝、绿、红的亮度,因而就省去了调色板。

图像数据: 图像数据也叫位图阵列,它记录了图像的每一个像素值, 在生成图像文件时,Windows从图像的左下角开始(从左到 右,从下到上)逐行扫描图像,将图像的像素值一一记录下 来,这些记录像素的字节组成了图像数据(位图阵列)。 图像的宽度(以字节为单位)必须是4的倍数,倘若不到4的倍数则必须要用0补足。 虽然BMP的图像数据有BI_RLE8及BI_RLE4两种压缩格式,但 是使用的人却极少,几乎所有的BMP档都是采用没有压缩的 格式来储存图像数据。 当BitsPerPixel=1时,图像数据中的每个字节代表8个像素 当BitsPerPixel=4时,图像数据中的每个字节代表2个像素 当BitsPerPixel=8时,图像数据中的每个字节代表1个像素 当BitsPerPixel=24时,图像数据中的每3个字节代表1个像素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值