同样是把 PDF 转成图片,为什么有人特别指定要 PNG 而不是 JPG?答案通常只有两个字:透明。PNG 格式支援透明背景(Alpha 通道),而 JPG 不支援。这意味着:如果你的 PDF 页面有白色背景,转成 JPG 后是白底图;但转成 PNG 后,可以保留透明背景——这对设计师、开发者来说至关重要。这篇文章带你彻底搞清楚什么时候该用 PNG、如何转换、以及如何在解析度和档案大小之间找到最佳平衡。
很多人对这两种格式的选择感到困惑,这里有一个清楚的判断框架:
一定要用 PNG 的情境:
JPG 更适合的情境:
标准 PDF 页面通常有白色背景,但技术上说,PDF 内容本身是叠放在“透明画布”上的。当你把 PDF 转成 PNG 并保留透明背景时,工具会移除白色背景层,只保留有实际内容的部分。
这意味着:
注意:只有 PDF 页面背景是白色(或无背景)时,这个功能才有意义。如果 PDF 有彩色背景,透明化后那个背景色也会消失,可能不是你想要的结果。
PNG 是无损格式,没有 JPEG 压缩时的画质损失,但相同解析度下 PNG 档案通常比 JPG 大很多。在选择解析度时需要考虑这个平衡:
72 DPI:
150 DPI:
300 DPI:
压缩与档案大小的平衡:
PNG 格式本身提供 0~9 的压缩等级设定(0 为最快、最大;9 为最慢、最小),这个压缩是完全无损的,不影响画质。大多数工具预设使用中等压缩(6 左右),这对大多数使用场景是合适的。
适用情境:快速转换少量页面,最简单的方式。
操作步骤:
优点:无需安装、操作直观
缺点:需要上传文件;不是所有线上工具都支援真正的透明背景 PNG;批量限制
适用情境:Mac 用户,完全免费,支援真正的透明背景汇出。
操作步骤:
批量汇出:在缩略图面板选取所有页面,拖曳到桌面,每页自动存为独立 PNG。
操作步骤:
Acrobat 的 PNG 汇出支援 16 位元色彩深度,对需要高品质设计稿的场景非常有用。
使用 Ghostscript 批量转换为 PNG:
gs -dNOPAUSE -dBATCH -sDEVICE=pngalpha -r150 -sOutputFile=page_%03d.png input.pdf
这里的关键是 -sDEVICE=pngalpha,这个设备模式会输出带有 Alpha 通道(透明背景)的 PNG。如果不需要透明背景,可以用 -sDEVICE=png16m。
使用 ImageMagick(另一个强大的免费工具):
convert -density 150 input.pdf -quality 90 page_%03d.png
对于需要定期批量转换大量 PDF 的使用者:
转换完成后,你可能还需要:
-trim 选项自动裁切透明/白色边框Q:为什么我的 PNG 没有透明背景,还是白色?
A:这有两种可能:1)你使用的工具不支援 PNG Alpha 通道汇出,换用支援的工具(如 Ghostscript pngalpha 模式或 macOS 预览);2)你的 PDF 本身有设定白色背景填充,这种情况下透明化会让背景也消失,需要用图片编辑工具手动移除白色背景。
Q:PNG 档案太大,有办法缩小吗?
A:降低解析度(150 DPI 已足够大多数萤幕用途)、使用 pngquant 工具进行有损压缩(通常视觉上无差异)、或者改用 JPG 格式(如果不需要透明背景)。
Q:PDF 有多页,转成 PNG 后会是几个档案?
A:每页一个 PNG 档案,自动按页码命名。目前没有办法把多页合并成一个 PNG(PNG 格式本身不支援多页)。
Q:PNG 在网页上载入很慢怎么办?
A:高解析度 PNG 确实比 JPG 大很多。如果不需要透明背景,换用 JPG 格式;或者使用 WebP 格式(现代浏览器都支援),它能以更小的档案大小提供接近 PNG 的品质。
如果这个档案是机密的,最安全的做法是让它根本不离开你的电脑。PDF 转换完全在浏览器里执行:档案从你的硬碟读进记忆体、在本机处理、再写回硬碟,不会送到任何服务器。
在浏览器里直接完成,档案不会离开你的电脑:PDF 转换