概述
本指南比较了JPG和PNG在最重要的标准上的表现,以帮助您选择适合您需求的格式。
JPG最适合照片;PNG最适合具有透明度或文本的图形。
逐项对比
文件大小
JPG: 由于有损压缩,JPG在照片中的文件大小要小得多。
PNG: PNG是无损的,文件较大,但对于具有透明度的图形是必要的。
Winner: JPG
质量
JPG: 由于有损压缩,JPG每次保存时都会失去质量。
PNG: PNG是无损的, , 保存时没有质量损失。
Winner: PNG
透明度
JPG: JPG不支持透明度。
PNG: PNG支持完整的alpha通道透明度。
Winner: PNG
最佳用途
JPG: 最适合照片和具有数百万种颜色的复杂图像。
PNG: 最适合徽标、图标、截图和具有锐利边缘的图像。
Winner: 平局
网页使用
JPG: JPG加载速度更快,适合照片 - 有利于页面速度。
PNG: PNG文件较大,但在需要透明度时是必要的。
Winner: JPG
技术基础
JPG (JPEG) 是一种有损的、基于块的图像格式。其编码器将图像分为 8x8 像素块,对每个块应用离散余弦变换 (DCT),将其从空间像素转换为频率系数,然后量化这些系数,丢弃人眼最不敏感的高频细节。[1]存留的系数通过熵编码进行压缩。
PNG (Portable Network Graphics) 是一种无损格式,精确存储每个像素。它应用逐行预测滤波器,然后应用 DEFLATE 算法(LZ77 字典匹配和霍夫曼编码的组合),使原始图像在解压时可以逐位重建。[3][4]
颜色和透明度
JPG 在 YCbCr 色彩空间中编码图像,并通常对色度通道进行二次采样(通常为 4:2:0),以较低分辨率存储颜色而不是亮度,因为眼睛对亮度更敏感。[2]JPG 没有 alpha 通道,因此无法存储透明度。
PNG 支持每个通道 8 或 16 位,以及完整的 alpha 通道,允许每个像素的可变透明度。[3]PNG 还支持索引颜色模式,其调色板最多可包含 256 种颜色,用于简单图形以减小文件大小。
压缩特性
由于 JPG 丢弃数据,对于连续色调图像(如照片),它比 PNG 实现更小的文件,其中渐变色过渡压缩效率高,丢弃的细节不容易被察觉。[1]对于具有大面积纯色、尖锐边缘或文本的图像,PNG 产生比 JPG 更小的文件,其无损预测滤波器找到强冗余,而 JPG 的块变换引入明显的伪影。
对于典型的照片,无损 PNG 的大小是视觉效果相当的 JPG 的数倍。
伪影和代数损失
JPG 压缩产生特征伪影:沿 8x8 网格的块状,以及围绕高对比度边缘(如文本)的振铃(晕圈)。这些伪影随着质量设置降低而增加。每次解码、编辑和重新保存 JPG 时,有损压缩都会重新应用,因此质量会累积下降,这种特性称为代数损失。[1]PNG 因为是无损的,不产生伪影,也没有代数损失:重复保存使图像保持不变。
标准化和支持
JPEG 被标准化为 ITU-T Recommendation T.81 和 ISO/IEC 10918-1,JFIF 文件约定定义了压缩数据如何存储为文件。[1]PNG 由 W3C 定义,并发布为 ISO/IEC 15948;它在 1990 年代中期创建,部分是作为 GIF 的无专利替代品。[3][4]所有主要 Web 浏览器、操作系统和图像编辑软件都支持这两种格式。
典型应用
JPG 主要用于照片和复杂自然图像,包括数码相机输出和网络上的大多数摄影内容。PNG 用于需要透明度、尖锐边缘或精确再现的图形,如徽标、图标、屏幕截图、线条艺术和在不同背景上合成的图像。许多工作流在无损格式(PNG 或其他格式)中存储主图像,并导出 JPG 副本用于分发,其中小文件大小是优先考虑的。
参考资料
常见问题
我什么时候应该使用JPG与PNG?
对于照片和复杂图像使用JPG。对于徽标、截图、图标或任何需要透明度的内容使用PNG。
PNG支持透明度吗?
是的,PNG完全支持 alpha 通道透明度。JPG根本不支持透明度。
哪个更适合网页使用?
JPG更适合照片(文件更小)。PNG在透明图形中是必要的。WebP对两者都理想。
我可以在不损失质量的情况下将JPG转换为PNG吗?
不可以,将JPG转换为PNG无法恢复在JPG压缩过程中已经损失的质量。
PNG还是JPG更适合打印?
PNG通常更适合打印图形和徽标。对于照片,高分辨率下两者都能很好工作。