无损压缩
无损压缩是什么,哪些图像格式支持无损压缩,以及什么情况下需要逐像素保留原始内容。
无损压缩在不丢弃任何信息的前提下减小文件体积。解码后,每个像素都与原始图像逐位一致。
无损压缩的原理是找出冗余。Huffman 编码和算术编码等熵编码器为常见的值分配更短的编码。LZ77 和 LZW 等字典方法用引用替换重复出现的序列。图像格式还会加入预测滤波器,只存储某个像素与相邻像素之间的差值,从而把平坦区域变成大段连续的零。
文件能缩小多少取决于内容。纯色较多的界面截图压缩效果好。照片和噪点较多的图像压缩效果差,因为每个像素都与下一个像素略有不同。
转换图像格式
把有损文件转换为无损格式可以避免进一步损失,但无法恢复已经丢失的细节。Image Converter 可以在 PNG、JPG 和 WebP 之间转换。
无损压缩的工作原理
PNG 是一个典型的例子。每一行像素都会经过 5 种滤波器之一(None、Sub、Up、Average、Paeth),这些滤波器根据相邻像素预测数值。滤波后的数据再用 DEFLATE 压缩,DEFLATE 结合了 LZ77 和 Huffman 编码。解码时,这两个步骤会被精确地逆向还原。
无损格式:PNG、WebP 无损、TIFF
- PNG:滤波器加 DEFLATE,支持完整的 Alpha 通道。macOS 默认的截图格式。
- WebP 无损:WebP 的一种独立模式,同一图像通常比 PNG 更小。
- TIFF:一种容器格式,可以使用 LZW 或 ZIP 压缩,常见于印刷和扫描领域。
- GIF:在最多 256 色的调色板上使用 LZW。缩减到这个调色板本身就是有损的。
- AVIF 和 JPEG XL 也有无损模式。
无损与有损
| 无损 | 有损 | |
|---|---|---|
| 像素精度 | 完全一致 | 近似 |
| 截图体积 | 中等 | 小 |
| 照片体积 | 大 | 小 |
| 反复保存 | 无变化 | 损失逐次累积 |
常见错误
- 把 JPG 另存为 PNG,并期望画质提升。
- 在长时间的照片会话中使用无损 PNG,而这时体积比像素精度更重要。
- 以为 GIF 对全彩图像是无损的。
- 不考虑内容类型,直接比较不同格式的文件体积。
现在就有图片要处理?
使用 Image Compressor 在浏览器中减小 PNG 的体积。
常见问题
什么时候需要逐像素精确的输出?
用作 OCR 输入、进行像素比对、视觉回归测试、需要再次编辑的母版,以及包含小字的截图。
Temposhot 的哪种导出是无损的?
结果面板中的 PNG Export (Lossless)。ZIP 导出会打包原始截取文件。
参考资料
相关资源
总是重复截取相同的截图吗?
Temposhot 可定时截取屏幕、窗口或指定区域,并将结果导出为 PDF、图片、ZIP 或 MP4。免费的网页工具只能处理单张图片。