png图片信息有3个不可选关键数据块:
IHDR,IDAT,IEND
和一个头
PNG
其中:
IHDR包含了宽、高、色深、颜色类型、压缩方法等几个信息。
IDAT包含了实际的图片信息
IEND为结束块
每个块由4部分组成(顺序):
数据长度(length):4字节,比如0x00 0x00 0x00 0x10 表示改块数据长度为16
块类型码(chunk code):4字节,比如0x49 0x44 0x41 0x54 表示IDAT
块数据(data):长度由length决定,比如0x01 表示内容为1
循环冗余检测(crc):4字节,用于在接收端检测数据正确性
注:数据块还有PLTE调色板数据块,是可选的。还有很多辅助数据块。