您的位置:首页 > 其它

BMP 文件格式 (中文)

2007-01-15 20:27 375 查看
这一阵子老与这些格式打交道,今天写一点出来.
BMP文件格式
目前支持BMP格式为:单色,16色,256色,16Bit,24Bit,其中16Bit格式中,只支持有调色板的565格式.

偏移
名称
字节数
意义和值
0000h
Head
2 bytes
BM 文件头标志
0002h
File Size
4 bytes
计算整个文件大小
0006h
reserved
4 bytes
保留字段必需设置为0
000ah
bitmap data offset
4 bytes
从文件开始到位图数据开始之间的数据(bitmap data)之间的偏移量
000eh
bitmap header size
4 bytes
位图信息头(Bitmap Info Header)的长度,用来描述位图的颜色、压缩方法等
0012h
width
4 bytes
位图的宽度,以象素为单位
0016h
height
4 bytes
位图的高度,以象素为单位.
001ah
planes
2 bytes
位图的位面数(注:该值将总是1)
001ch
bits per pixel
2 bytes
每帧数据每个象素的位数
1 - 单色位图(实际上可有两种颜色,缺省情况下是黑色和白色。你可以自己定义这两种颜色)
4 - 16 色位图
8 - 256 色位图
16 - 16bit 高彩色位图
24 - 24bit 真彩色位图
32 - 32bit 增强型真彩色位图
001eh
compression
4 bytes
压缩说明:
0 - 不压缩 (使用BI_RGB表示)
1 - RLE 8-使用8位RLE压缩方式(用BI_RLE8表示)
2 - RLE 4-使用4位RLE压缩方式(用BI_RLE4表示)
3 - Bitfields-位域存放方式(用BI_BITFIELDS表示)
0022h
bitmap data size
4 bytes
用字节数表示的位图数据的大小。该数必须是4的倍数。
0026h
hresolution
4 bytes
用象素/米表示的水平分辨率
002ah
vresolution
4 bytes
用象素/米表示的垂直分辨率
002eh
colors
4 bytes
位图使用的颜色数。如8-比特/象素表示为100h或者 256。
0032h
important colors
4 bytes
当该域的值等于颜色数时(或者等于0时),表示所有颜色都一样重要。
0036h
palette
n * 4 bytes
对于调色板中的每个表项,这4个字节用下述方法来描述RGB的值:
1字节用于蓝色分量
1字节用于绿色分量
1字节用于红色分量
1字节用于填充符(设置为0) 。
0436h
bitmap data
x bytes
该域的大小取决于压缩方法及图像的尺寸和图像的位深度,它包含所有的位图数据字节,这些数据可能是彩色调色板的索引号,也可能是实际的RGB值,这将根据图像信息头中的位深度值来决定。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: