我在谷歌上搜索了一下,找到了这里的一些内容:http://paulbourke.net/dataformats/bmp/,但我无法理解头文件的大小。
阅读一些网页后,我感到困惑。http://en.wikipedia.org/wiki/JPEG
有人能提供关于所有这些格式头文件的正确信息吗?
我在谷歌上搜索了一下,找到了这里的一些内容:http://paulbourke.net/dataformats/bmp/,但我无法理解头文件的大小。
阅读一些网页后,我感到困惑。http://en.wikipedia.org/wiki/JPEG
有人能提供关于所有这些格式头文件的正确信息吗?
我不知道jpg / jpeg,gif或其他格式的图片,但我了解BMP图像。
BMP文件头大小为14个字节。前两个字节是头字段,由两个char
组成(通常是“B”,然后是“M”)。然后是BMP文件的总大小(作为4字节整数),接下来的两个字段都是保留字段,都是2个字节(因此可以都设置为0),最后,文件头的最后一部分是一个4字节整数,表示像素数组开始的偏移量。
文件头之后是信息头。有各种不同的信息头在使用中,但其中最常见的是BITMAPINFOHEADER
。
该标头包括:以字节为单位的标头大小-为40(4个字节),然后是像素阵列的宽度(4个字节),像素阵列的高度(4个字节),颜色平面数-通常为1(2个字节),每像素位数-通常为24(2个字节),最后还有6个字段,每个字段都是4个字节大,可以设置为0(为了保持答案简短,不会详细介绍)。
在此之后,您可以开始编写像素数组。
如果您选择每像素24位,则每个像素将占用3个字节的数据,每个字节表示一个无符号字符(从0到255),对应于红色、绿色或蓝色。BMP图像使用BGR约定,请确保按照该顺序编写颜色字节。