术语

JPG

JPG(也称 JPEG)是一种针对照片和复杂图像优化的有损图像格式。它会舍弃人眼不易察觉的视觉细节,从而生成较小的文件。

JPG 压缩如何工作

JPG 压缩包含多个步骤,目的是利用人类视觉的局限。首先,图像会从 RGB 转换为 YCbCr 色彩空间,把亮度(luma)和色度(chroma)分开。人眼对亮度变化比对颜色变化更敏感,因此色度通道可以用较低分辨率保存,这项技术称为色度抽样。

接下来,图像会被分成 8x8 像素的区块。每个区块通过离散余弦变换(DCT),把像素值转换为频率分量。高频分量代表细微细节和清晰边缘,低频分量代表平缓的颜色变化和大面积形状。

压缩时会根据质量设置舍弃高频分量。质量较高(85%–95%)时,大部分细节会保留,文件也相对较大。质量较低(30%–50%)时,会舍弃更多数据,文件虽然更小,却会出现明显伪影,例如清晰边缘周围变模糊、渐变中出现色带,以及平滑区域产生块状图案。

这种分块方式使 JPG 很适合以平滑渐变和复杂纹理为主的照片,也正是它不适合截图的原因。文字和界面元素清晰、对比强烈的边缘,恰好是算法会舍弃的细节。

JPG、PNG 与 WebP

  • JPG——只支持有损压缩,适合把照片压缩为较小文件,不支持透明度。清晰边缘和文字周围会出现伪影,但所有浏览器、图像查看器和文档格式都支持它。
  • PNG——只支持无损压缩,会完整保留每个像素并支持透明度,最适合截图、文字和界面元素。保存照片时,文件通常比 JPG 大。
  • WebP——同时支持有损和无损模式。在画质相近时,WebP 生成的文件通常比 JPG 和 PNG 都小,并且支持透明度。现代浏览器普遍支持,原生应用的支持范围也在扩大。

对于截图,PNG 几乎总是更合适。用于网页显示的照片则常以 JPG 作为兼容性最广的默认格式;如果文件大小很重要,WebP 正逐渐成为更常见的选择。

什么时候使用 JPG

  • 照片——复杂的颜色渐变、自然纹理和连续色调可以有效压缩,且肉眼可见的画质损失很小。
  • 首屏大图和横幅——大面积照片背景的文件大小会直接影响页面加载,而逐像素完全准确并不重要。
  • 缩略图预览——图像显示较小时,看不到细微细节。中等质量的 JPG 文件很小,可以快速加载。
  • 邮件附件——接收者的系统可能不支持 WebP,又必须控制文件大小时,JPG 是兼容性最广的有损格式。
  • 社交媒体上传——平台通常会重新压缩上传的图像。使用高质量 JPG 作为源文件,可以给平台的压缩器提供更好的输入。

JPG 不适合含文字的截图、需要透明度的图像、包含纯色和清晰边缘的图形,也不适合需要反复编辑和保存的素材,因为每次保存都会叠加有损压缩造成的画质损失。

常见错误

  • 用 JPG 保存含文字的截图。 JPG 压缩会模糊文字边缘,并在高对比度边界周围产生振铃伪影。小字会变得难以辨认,界面标签也会发虚。只要截图中有需要阅读的文字,就应使用 PNG。
  • 重复压缩已经压缩过的 JPG。 每次保存都会再次应用有损压缩,使画质进一步下降,这称为代际损失。应始终从原始源文件开始编辑,而不是使用之前压缩过的 JPG。
  • 为了减小文件而把质量设得太低。 质量低于 60%–70% 后,伪影会非常明显,包括平滑区域中的块状图案、边缘颜色渗出,以及细节丢失。极低质量节省的空间通常不值得牺牲画面。
  • 以为 JPG 支持透明度。 把带透明背景的图像保存为 JPG,会用纯色填充透明区域。需要透明度时,应改用 PNG 或 WebP。

常见问题

JPG 和 JPEG 是同一种格式吗?

是。JPG 和 JPEG 指同一种格式。较短的扩展名来自早期 Windows 系统,当时文件扩展名最多只能有三个字符。两者使用完全相同的压缩方式。

为什么 JPG 会让文字变模糊?

JPG 压缩会对 8x8 像素区块中的颜色值进行平均。黑色文字与白色背景之间的边界等清晰边缘会在这个过程中被平滑,从而产生明显的模糊和振铃伪影。

JPG 应该使用什么质量设置?

对于照片和营销图像,80%–85% 的质量通常能兼顾文件大小与视觉效果。低于 70% 后,伪影会变得明显。含文字的截图不应使用 JPG,改用 PNG。

JPG 压缩可以撤销吗?

不可以。JPG 采用有损压缩,已经舍弃的数据无法从压缩文件中恢复。若以后可能需要用其他质量重新导出,应始终保留原始源文件。

JPG 支持透明度吗?

不支持。JPG 没有 Alpha 通道。保存为 JPG 时,透明区域会被纯色填充,通常是白色或黑色。需要透明度时,应使用 PNG 或 WebP。

参考资料

相关资料

什么是 JPG? | 术语表 | Shotomatic