
最近,W3C 发布了可移植网络图形(PNG)规范(第三版),距离第二版被接受为 Web 标准已经过去了二十年。这次更新引入了高动态范围(HDR)色彩,标准化了动画 PNG(APNG),并增加了 Exif 元数据支持,使PNG成为AVIF和WebP等格式的一种有价值的替代方案。
PNG 格式上一次更新是在2003年。制定第三版的动机一部分来自 W3C 时序文本工作组,他们需要一种能够支持 HDR 字幕的格式。有时字幕的亮度过高,特别是在黑暗场景中,可能会导致眼睛疲劳并分散注意力。在这一需求的推动下,Adobe、苹果和谷歌等行业参与者都做出了努力。此次更新的动机还有一部分来自 PNG 在数字保存领域的作用;由于其无损压缩和标准化特性,它成为美国国会图书馆的推荐格式。
此次更新最重要的变化是通过新引入的 4 字节cICP
块(编码独立代码点)提供了强大的 HDR 支持。这个块允许图像显式定义色彩空间、传递函数和矩阵系数。Chris Lilley是 PNG 最初的开发者之一,他为新 PNG 规范的制定做出了贡献。在一篇技术文章中,他解释了这如何在常见的宽色域显示器上实现准确的色彩渲染。
此外,新规范正式标准化了动画 PNG(APNG)。APNG 以前是 Mozilla 提出的非官方扩展,提供了一种无损的逐帧动画功能,支持 24 位色彩和 8 位 alpha 透明度。现在,开发者有了比动画 GIF 更好的替代品。
最后,规范增加了对Exif数据的官方支持,允许将版权信息和相机设置等元数据直接嵌入到文件中。
在Reddit上,开发者重点讨论了标准化 APNG 格式带来的实际好处。虽然现代视频编解码器在处理动画时通常更高效,但它们也存在一些局限性。一位 Reddit 用户强调了 APNG 在需要透明度的动画中的重要性:
虽然 webm 规范支持 alpha 通道,但 Safari 不会渲染它。因此,如果你希望使用具有透明背景的动画资源,但又觉得 gif 的 1 位 alpha 深度比较局限,那么 APNG 会是一个很好的选择。我怀疑,这正是苹果短命的 iMessage“便签”支持 APNG 的原因。
虽然新功能设计成了向后兼容,但有一位 HackerNews 用户指出,它还可以进一步改进:
这很好,但也有一个问题,用户可能不会注意到,他们的设置提供给他们的结果是次优的……似乎向后兼容性并没有达到最好。旧程序显示的是褪色的图像,这很糟糕。这本可以像 JPG 增益图一样避免,只需要更新程序即可利用更广的色域……而不是正确地显示符合 sRGB 的颜色。
文章作者确认,工作组意识到了这一点,并计划在下一版规范中解决这个问题。他们写道,“我们目前正在制定的第四版 PNG 规范可能会增加增益图。不过,增益图是额外的数据,所以会做些权衡。”
第五版规范将研究压缩改进,目标包括更新 libpng,实现并行编码/解码,并可能集成像 zstd 这样的现代算法。
声明:本文为 InfoQ 翻译,未经许可禁止转载。
原文链接:
https://www.infoq.com/news/2025/08/png-3-hdr-animated-png-support/
评论