位图都是有压缩格式的吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了位图都是有压缩格式的吗?相关的知识,希望对你有一定的参考价值。
想要修改位图的RGB必须要分析位图的压缩格式吗?
我用把它打开成2进制文件进行修改,请给我详细点的回答好吗?
用UltraEdit打开一个Bitmap文件,选择Hex方式查看:
A>. 前面的14个字节是头,前面10字节可以直接抄过来,不用变,但后面4个字节是描述图像内容的起始地址.
B>. 然后第15,16,17,18字节是Info段的长度,这段一般是40字节长,19,20,21,22是长,23,24,25,26是高,后面的是描述是否压缩啊什么的记不大清楚了.
C>. 如果是24bit图,每个点保存RGB共三个字节,32bit多一个alpha共4个字节.
如果保存8bit图,则在Info段后跟色表,注意A>里面的图像起始数据Address要后移
a>. 色表格式:BGRA0,BGRA1....BGRA255填充,每种颜色4个字节;
b>. 图像存储使用index,比如字节0代表色表内的BGRA0;
D>. 4Bit/2Bit色格式和C类似,不过每种颜色占4/2Bit;
另外:
对齐:在32bit系统内按照32bit对齐,每行数据不足4字节,补0x00;
压缩:bitmap一般很少压缩,压缩一般使用的runlength;
查查这方面的资料,网上不少.
参考资料:http://topic.csdn.net/t/20060408/16/4672522.html
参考技术A 不需要16bitmap位图的压缩方式及处理
在这里先对bmp file format 格式进行简单的叙述:
BMP文件格式,又称为Bitmap(位图)或是DIB(Device-Independent Device,设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面(graphical user interfaces)也在它的内建图像子系统GDI中对BMP格式提供了支持。
下面以Notepad++为分析工具,结合Windows的位图数据结构对BMP文件格式进行一个深度的剖析。
BMP文件的数据按照从文件头开始的先后顺序分为四个部分:
Ø bmp文件头(bmp file header):提供文件的格式、大小等信息。
Ø 位图信息头(bitmap information):提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息。
Ø 调色板(color palette):可选,如使用索引来表示图像,调色板就是索引与其对应的颜色的映射表。
Ø 位图数据(bitmap data):就是图像数据。
下面结合Windows结构体的定义,通过一个表来分析这四个部分。
用UE打一个bmp位图:
以上是关于位图都是有压缩格式的吗?的主要内容,如果未能解决你的问题,请参考以下文章