这几种文件格式主要在于找到图片的宽度和高度,没有对色彩进行总结
bmp
文件头部:共14字节
位部信息头:共40字节
文件头部如图所示
头部占14个字节,具体的内容如下所示。
位部信息头
- 信息头部大小:4字节(通常是40或56),2800相当于0028等于40
- 图像宽度:4字节,单位是像素 84030000相当于00000384(读取的时候是从左向右读取,但是每一个信息块字节是从右向左排序)
- 图像高度:4字节,单位是像素 96000000相当于00000096
- 剩下的字节内容信息如下
jpg格式
jpg格式包含以下几个部分
- 文件头
- 图像识别信息
- 定义量化表
- 图像基本信息
- 扫描行开始
- 文件尾
文件头:
两个字节:FF D8
图像基本信息:
起始标志:两个字节 FF C0
段长度:两个字节 00 11
样本精度:一个字节 08
图片高度:两个字节 00 96
图片宽度:两个字节 03 84
结尾:
两个字节:FF D9
gif格式
一个GIF文件一般包含多个图片。之前的图片渲染模式一般是将多个图片绘制到一个大的虚拟画布上,而现在一般将这些图片集用于实现动画。
**头部:**六个字节,47 49 46 38 39 61
前三位是标志,后三位是版本
逻辑屏幕描述符
紧跟在头部后面
那么这个gif的画布宽度是03 AC 画布高度是01 96
图像描述符
以2C开头,后8个字节代表图片的位置以及随后的图片数据。
左右起始位置:两个字节
上下起始位置:两个字节
图像宽度:两个字节
图像高度:两个字节
png文件格式
文件头8字节:89 50 4E 47 0D 0A 1A 0A
接下来的地方就是IHDR数据块了:
长度:4字节
标识:4字节
宽:4字节
高:4字节
5个字节分别为:色深,颜色类型,总是00(两字节),非隔行扫描
crc校验码:4字节