Windows位图(windows上位图是little endian)由四部分组成:
A.1,位图文件头部
A.2,位图信息头部
A.3,颜色表
A.4,位图的内容(位图由大量的bit组成)
下表来自HackJava,它描述了A1的结构
# of Bytes
|
Type |
Description |
2
|
Character |
文件类型,一般是BM开头 |
4
|
32-bit Int |
文件大小,单位byte |
2
|
16-bit Int |
保留 |
2
|
16-bit Int |
保留 |
4
|
32-bit Int |
位图内容(A.4)开始的字节偏移 |
A.2部分的结构以下
# of Bytes
|
Type |
Description |
4
|
32-bit Int |
信息头的大小(字节数) |
4
|
32-bit Int |
位图的宽度(如1024像素) |
4
|
32-bit Int |
位图的高度(如768像素) |
2
|
16-bit Int |
Number of bitplanes (should be 1) |
2
|
16-bit Int |
用多少个位去描述一个像素(1, 4, 8, or 24) |
4
|
32-bit Int |
使用的压缩类型 |
4
|
32-bit Int |
若是使用了压缩,须要指定位图的实际大小 |
4
|
32-bit Int |
每米的水平像素的数量(用于放大缩小) |
4
|
32-bit Int |
每米的垂直像素的数量(用于放大缩小) |
4
|
32-bit Int |
实际用到的颜色数量 |
4
|
32-bit Int |
较重要颜色的数量(用于减小颜色数) |