1 PNG格式概述
1.png是一种采用无损压缩算法的位图格式,其设计目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性;
2.PNG使用从LZ77派生的无损数据压缩算法,一般应用于JAVA程序、网页或S60程序中,原因是它压缩比高,生成文件体积小。
2 PNG文件特性
1.使用调色板技术可支持256种颜色的彩色图像。
2.流式读/写性(streamability):图像文件格式允许连续读出和写入图像数据。(因此适于网络传播)
3.逐次逼近显示(progressive display):这种特性可使在通信链路上传输图像文件的同时就在终端上显示图像,把整个轮廓显示出来之后逐步显示图像的细节,也就是先用低分辨率显示图像,然后逐步提高它的分辨率。(类似马赛克逐渐消除的过程)
4.透明性(transparency):这个性能可使图像中某些部分不显示出来,用来创建一些有特色的图像,JPEG和GIF没有这个特性
5.辅助信息(ancillary information):这个特性可用来在图像文件中存储一些文本注释信息。(就是可以说一些废话)
6.独立于计算机软硬件环境
7.使用无损压缩(无损!)
8.体积小,可在一个文件中存储多幅图像
3 头文件
8字节的PNG文件署名域用来识别该文件是不是PNG文件
十进制表示 | 十六进制表示 |
---|---|
137 80 78 71 13 10 26 10 | 89 50 4E 47 0D 0A 1A 0A |
4 数据块
数据块分为两种类型,一是关键数据块(critical chunk),是必要的块;二是辅助数据块(ancillary chunks)。
每个数据块都由下表所