搜索
技术资料

技术资料

本版块未设置版块简介!请后台版块编辑添加。
  •  帖子: 253
  •  讨论: 253
  •  关注: 0

RLE 压缩方式解析

发表于 2025-5-10 00:53:37 | 显示全部楼层 |阅读模式
263 0
RLE 压缩方式解析
网络
1.BI_RLE8:
每个象素为8比特的RLE压缩编码,可使用编码方式和绝对方式中的任何一种进行压缩,这两种方式可在同一幅图中的任何地方使用。
编码方式:由2个字节组成,第一个字节指定使用相同颜色的象素数目,第二个字节指定使用的颜色索引。此外,这个字节对中的第一个字节可设置为0,联合使用第二个字节的值表示:

第二个字节的值为0:行的结束。
第二个字节的值为1:图象结束。
第二个字节的值为2:其后的两个字节表示下一个象素从当前开始的水平和垂直位置的偏移量。

绝对方式:第一个字节设置为0,而第二个字节设置为0x03~0xFF之间的一个值。在这种方式中,第二个字节表示跟在这个字节后面的字节数,每个字节包含单个象素的颜色索引。压缩数据格式需要字边界(word boundary)对齐。下面的例子是用16进制表示的8-位压缩图象数据:
03 04 05 06 00 03 45 56 67 00 02 78 00 02 05 01 02 78 00 00 09 1E 00 01
这些压缩数据可解释为 :
压缩数据  扩展数据
03 04    04 04 04  
05 06    06 06 06 06 06  
00 03    45 56 67 00 45 56 67  
02 78    78 78  
00 02    05 01 从当前位置右移5个位置后向下移一行
02 78    78 78  
00 00    行结束
09 1E    1E 1E 1E 1E 1E 1E 1E 1E 1E  
00 01    RLE编码图象结束  

2.BI_RLE4:
每个象素为4比特的RLE压缩编码,同样也可使用编码方式和绝对方式中的任何一种进行压缩,这两种方式也可在同一幅图中的任何地方使用。这两种方式是:
编码方式:由2个字节组成,第一个字节指定象素数目,第二个字节包含两种颜色索引,一个在高4位,另一个在低4位。第一个象素使用高4位的颜色索引,第二个使用低4位的颜色索引,第3个使用高4位的颜色索引,依此类推。
绝对方式:这个字节对中的第一个字节设置为0,第二个字节包含有颜色索引数,其后续字节包含有颜色索引,颜色索引存放在该字节的高、低4位中,一个颜色索引对应一个象素。此外,BI_RLE4也同样联合使用第二个字节中的值表示:
第二个字节的值为0:行的结束。
第二个字节的值为1:图象结束。
第二个字节的值为2:其后的两个字节表示下一个象素从当前开始的水平和垂直位置的偏移量。
下面的例子是用16进制数表示的4-位压缩图象数据:
03 04 05 06 00 06 45 56 67 00 04 78 00 02 05 01 04 78 00 00 09 1E 00 01
这些压缩数据可解释为 :
压缩数据  扩展数据
03 04    0 4 0
05 06    0 6 0 6 0  
00 06    45 56 67 00 4 5 5 6 6 7  
04 78    7 8 7 8  
00 02    05 01 从当前位置右移5个位置后向下移一行
04 78    7 8 7 8  
00 00    行结束
09 1E    1 E 1 E 1 E 1 E 1  
00 01    RLE图象结束
回复

使用道具 举报

全部评论

暂无评论,期待您打破宁静

TA的帖子
相关帖子
  • admin 2025-5-10

    关于地图文件格式的解释 网络帖子原先发在梦幻的,想讨论讨论,后来发现这个对于地图 ...

  • admin 2025-5-10

    RLE压缩方式 网络简单的说RLE压缩就是将一串连续的相同数据转化为特定的格式达到压缩 ...

  • admin 2025-5-10

    介绍都在压缩包里面

发布 联系QQ