存储类型[编辑]
PNG图片主要由三种类型存储
- PNG 8:图片使用8 bits来存储,可以用2的8次方大小个种类颜色来存储一张黑白的图片。也就是说PNG 8能存储256种颜色,因为颜色少,文件体积也非常小,一张图片如果颜色简单,将它设置成PNG 8的图片是非常省空间合适的。
- PNG 24:图片使用24bits来存储,用三个8bits分别去表示 R(红)、G(绿)、B(蓝)三个通道(Channel)的数值。可以表达256乘以256乘以256=16777216种颜色的图片,色彩丰富度更高,但相对的所占用的空间也就更大了。
- PNG 32:图片使用32bits来存储,相当于PNG 24 加上 8bits的透明颜色通道,总共有R(红)、G(绿)、B(蓝)、A(透明)四个通道。图片能表示的色彩跟PNG 24一样多,并且还支持256种透明度,能让图片色彩更加丰富。
文件资料构成[编辑]
PNG图像格式文件由一个8字节的PNG文件标识(file signature or file header)域和3个以上的后续数据块(chunk)如:IHDR、IDAT、IEND等组成。
PNG文件包括8字节文件署名(89 50 4E 47 0D 0A 1A 0A,十六进制),用来识别PNG格式
十六进制 | 含义 |
---|---|
89 | 用于检测传输系统是否支持8位的字符编码(8 bit data),用以减少将文本文件被错误的识别成PNG文件的机会,反之亦然。 |
50 4E 47 | PNG每个字母对应的ASCII,让用户可以使用文本编辑器查看时,识别出是PNG文件。 |
0D 0A | DOS风格的换行符(CRLF)。用于DOS-Unix数据的换行符转换。 |
1A | 在DOS命令行下,用于阻止文件显示的文件结束符。 |
0A | Unix风格的换行符(LF)。用于Unix-DOS换行符的转换。 |