一.PNG图像格式简介
PNG是一种无损压缩的、易传输的光栅图像文件格式, 设计目的是用来替代GIF和TIFF文件格式, 并增加一些这两种所不具有的文件特性.PNG图像文件是现在网络、媒体、游戏中最常用的文件格式之一。相比BMP格式文件, PNG格式文件显得更复杂些.它支持灰度图像、索引彩色图像和真彩图像, 并且支持额外的α通道.采样的深度范围是从1位到16位.采用的压缩算法是LZ77派生的无损数据压缩算法
二.PNG文件结构
PNG文件由文件署名域(8字节)和数据块(Chunk)组成,文件署名域用来判断识别该文件是不是PNG文件,PNG包含两种类型的数据块, 一种叫关键数据块, 有4种.在每个PNG文件中都必须必须包含这四种数据块, 另一种叫做辅助数据块, 有14种。PNG文件中可以包含也可以不包含, 可以包含一种也可以同时包含多种.
文件头判断
00000000h | 89 | 50 | 4E | 47 | 0D | 0A | 1A | 0A |
三.每一个数据块的组成
Length:4字节, 块中数据的长度, 可以为0
Chunk Type Code (类型码) :4字节, 取值范围65~90和97~122
Chunk Data (数据块数据) :可变, 数据段