PNG是什么格式?

PNG是什么格式?

PNG是什么格式?便携式网络图形(英语:Portable Network Graphics,PNG)是一种支持无损压缩的位图图形格式,支持索引、灰度、RGB三种颜色方案以及Alpha通道等特性。PNG的开发目标是改善并取代GIF作为适合网络传输的格式而不需专利许可,所以被广泛应用于互联网及其他方面上。

PNG另一个非正式的名称来源为递归缩写:“PNG is Not GIF”。PNG的官方念法是“平”(/pɪŋ/),但是多数人是当成三个英文字母分开读。

PNG图片大多数都使用PNG作为扩展名,其互联网媒体类型为image/png。PNG于1997年3月作为知识性RFC 2083发布,于2004年作为ISO/IEC标准发布。

特性

  • 支持256色调色板技术以产生小体积文件
  • 最高支持24位真彩色图像以及8位灰度图像。
  • 支持Alpha通道的透明/半透明特性。
  • 支持图像亮度的Gamma校准信息。
  • 支持存储附加文本信息,以保留图像名称、作者、著作权、创作时间、注释等信息。
  • 支持无损压缩。
  • 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。
  • 使用CRC防止文件出错。
  • 最新的PNG标准允许在一个文件内存储多幅图像。

版本及历史

1995年早期,Unisys公司根据它在GIF格式中使用的LZW数据压缩算法的软件专利(美国 第4558302号(页面存档备份,存于互联网档案馆))开始商业收费。为避免专利影响,用于表现单张图像的PNG、用于表现动画的Multiple-image Network Graphics图形文件格式被同时创建出来。1999年8月,Unisys公司进一步中止了对自由软件和非商用软件开发者的GIF专利免费许可,从而使PNG格式获得了更多的关注。

在PNG传播过程中,很多网络浏览器经过很长时间才开始完全支持PNG格式;如Microsoft Windows默认的Internet Explorer浏览器一直到7.0版才支持PNG格式中的半透明效果,较早期的版本(如6.0 SP1)需要下载Hotfix或由网站提供额外的Script去支持。这造成PNG格式并没有得到广泛的认知。

PNG的1.0版本规范于1996年7月1日发布,后来被称为RFC 2083标准,并在1996年10月1日成为W3C建议。

  • PNG的1.1版本进行了部分小幅修改并增加了三个新的数据块定义,于1998年12月31日发布。
  • PNG的1.2版本增加了另外一个数据块,于1999年8月11日发布。
  • PNG现行版本是国际标准(ISO/IEC 15948:2003),并在2003年11月10日作为W3C建议发布。这个版本与1.2版仅有细微差别。

此外也产生了基于PNG的动画格式:1996年6月提出PNF(Portable Network Frame)草案,当年8月改名为MNG(Multiple-image Network Graphics),但由于较为复杂,实现支持的软件较少。2004年末,PNG的动画扩展——APNG,被提出来。这是一个相对于MNG更简单的动画实现方案,不识别APNG格式的PNG解码器至少能够正常回放第一幅普通PNG画面,相反地得到大部分显示或编辑的软件支持。

文件结构

PNG图像格式文件由一个8字节的PNG文件标识(file signature)域和3个以上的后续数据块(IHDR、IDAT、IEND)组成。

PNG文件包括8字节文件署名(89 50 4E 47 0D 0A 1A 0A,十六进制),用来识别PNG格式。