你拍了十页纸,把它们转成 PDF,最后得到一个 60 MB 的文件——Gmail 不肯发,申请门户也不接收。常见的反应是事后压缩这个 PDF,这确实有用,但它只是次优解,是在问题已经被烤进文件之后才补救。
原因是算术。当下手机相机拍出的照片,像素数大约是 A4 页面在完整印刷质量下所能呈现的三倍,是屏幕前读者所能看到的五到六倍。这些多余部分被嵌入 PDF,被携带、上传、下载——然后又被你最后运行的压缩大部分丢弃。在一开始就把它去掉,得到的是更小的文件、更快的转换,而且往往是更好看的结果。
为什么要事先缩小,而不是事后压缩
两条路都会得到更小的 PDF。但它们得到的不是同一个 PDF。
| 先缩小图片 | 事后压缩 PDF | |
|---|---|---|
| 去掉了什么 | 你本来就看不到的像素 | 每个像素中的色彩与细节,包括你需要的那些 |
| 对文字的影响 | 只要保持在可读阈值之上,就依然清晰 | 让字符边缘发虚——这是最先被看出来的地方 |
| 对 OCR 的影响 | 没有影响,只要文字部分保持 300 DPI | 识别准确率有可测量的下降 |
| 控制力 | 逐张处理,有意为之 | 一个设置套用到整份文档 |
| 转换速度 | 快得多——需要处理的数据更少 | 相同,再加上一次额外处理 |
| 可逆 | 不可逆——请保留原图 | 不可逆 |
真正的差别在于丢掉的是什么。缩放去掉的是本来就超出页面显示能力的分辨率——是名副其实多余的数据。而有损压缩去掉的是剩余像素中的信息,这正是过度压缩的页面在字母周围泛起那层淡淡涂抹感的原因。先把多余的部分丢掉,之后如果还需要压缩,它要做的事就少得多了。
算一算:你到底需要多大尺寸?
一道计算就能回答整个问题。像素除以英寸得到 DPI——每英寸点数——这是唯一决定页面是否清晰的数字:
DPI = 图片宽度(像素)÷ 页面宽度(英寸)
A4 页面宽 8.27 英寸,美式 Letter 宽 8.5 英寸。一张典型的 1200 万像素手机照片,长边为 4032 像素。把它放到竖排 A4 页面上,就是 4032 ÷ 8.27 ≈ 487 DPI。
这大约是专业印刷机所用分辨率的 1.6 倍,约为屏幕所能分辨的五倍。超过 300 DPI 的部分,在纸上是看不见的;超过约 150 的部分,在屏幕上是看不见的。你却一直带着它、上传它,并以文件体积为它付费,却什么也换不回来。
把算式反过来就得到目标:所需像素 = 页面宽度(英寸)× 你想要的 DPI。对 A4 页面按 150 DPI 计算,就是 8.27 × 150 ≈ 1240 像素宽。从 4032 降到 1240 像素,像素总数减少约 90 %,而在一个将在屏幕上阅读的页面上,这个差别是看不出来的。
值得记住的目标尺寸
竖排页面上满页图片的尺寸,已取整为便于记忆的数值:
| 用途 | DPI | A4(像素) | Letter(像素) | JPG 体积约计 |
|---|---|---|---|---|
| 屏幕阅读、邮件、网页上传 | 150 | 1240 × 1754 | 1275 × 1650 | 200–500 KB |
| 一般打印(稳妥之选) | 200 | 1654 × 2339 | 1700 × 2200 | 400 KB – 1 MB |
| 高质量印刷、精细细节 | 300 | 2480 × 3508 | 2550 × 3300 | 1–2 MB |
| 准备做 OCR 的扫描文字 | 不低于 300 | 2480 × 3508 | 2550 × 3300 | 1–2 MB |
| 存档或印前作业 | 600 | 4960 × 7016 | 5100 × 6600 | 4–8 MB |
对于绝大多数日常用途——一份表格、一张收据、一份居住证明、一次报销、任何将在屏幕上阅读的东西——150 DPI 确实够用;而当你不确定会不会打印时,200 是一个从容的默认值。十页按 150 DPI 生成的 PDF 只有几兆而不是六十兆,读者却看不出任何差别。
上面的尺寸针对的是铺满整页的图片。只占页面一半宽度的图片,只需一半的像素就能达到同样的观感清晰度——当你是在报告里插入照片,而不是转换整页时,这一点值得记住。
各平台如何缩小图片
iPhone 和 iPad
iOS 没有内置的尺寸调整功能,这是个由来已久的缺口。有一个不需要额外东西的变通办法:在照片中打开图片,点“编辑”,使用“裁剪”后导出——裁剪会直接减少像素数量。除此之外,可靠的路子是“快捷指令”:新建一个使用调整图像大小操作的快捷指令,将长边设为 1600 像素,然后从共享表单对任意照片运行它。一次性配置十五分钟,此后永远是两下点击的事。
Android
Google 相册在分享时可以按缩小后的尺寸导出,多数厂商自带的图库也会在图片详情或分享菜单里提供调整尺寸的选项——三星 Gallery 把它放在 ⋮ 菜单下。具体行为随定制系统和版本而异,因此在整批处理前,先核对一次导出的实际尺寸。
Windows
在文件资源管理器中选中图片,右键点击,如果装了 PowerToys 就选择调整图片大小——它支持批量、写出副本而非覆盖原文件,是 Windows 上遥遥领先的最佳选择。若没有 PowerToys,就在“画图”中打开单张图片,使用重新调整大小并勾选“保持纵横比”;选择“像素”而非“百分比”,然后填入目标宽度。
macOS
在访达中选中图片,全部用预览打开,在边栏中全选,然后依次点击工具 → 调整大小。设定宽度,保持勾选“按比例缩放”,然后保存——预览会一次性把设置应用到所有选中的图片。这是所有平台上最干净利落的内置批量缩放。
尺寸与质量设置之别
决定 JPG 体积的是两个彼此独立的旋钮,而它们很容易被混为一谈。尺寸指的是有多少像素。质量指的是压缩在这些像素内部保留了多少细节。降低其中任何一个都会让文件变小,但它们失效的方式完全不同。
降低尺寸是优雅地退化:图片变小,画面依旧干净,唯一的界限是文字小到读不清的那一点。降低质量则是可见地劣化:图片大小不变,却在每一条硬边缘周围长出块状光晕——而在一页文字上,那正是眼睛注视的地方。
所以顺序应当是:先把尺寸定对,再把质量留在较高水平——文档照片的甜蜜点是 80 % 到 85 %。一张 1240 像素宽、质量 85 % 的图片,明显好过 4032 像素、质量 30 % 的图片,而且文件更小。
对手机照片还有一点提醒:每保存一次 JPG 就会重新压缩一次,因此对一张已经历过多轮保存与转发的照片再做缩放,只会在既有损伤上雪上加霜。请从相机胶卷里的原图开始处理,而不是从聊天软件里转回来的那份副本。
什么时候不该缩小
先缩小在多数时候是对的,但在少数特定情形下是错的。在这些情形上判断失误,代价远高于省下的那几兆。
- 任何要经过 OCR 的东西。字符识别需要单个字母层级的细节,文字部分 300 DPI 是实际下限。低于这个值,准确率会迅速下滑,而且错误是无声的——一个文本层错误的可搜索 PDF,比根本没有文本层的更糟,因为搜索会失败却不告诉你原因。
- 小字与精细细节。合同脚注、仪表读数、序列号、手写字迹。请放大到页面上最小的关键内容,确认它能挺过这次缩放。
- 任何将按原尺寸打印的东西。海报、证书、要装裱的照片。屏幕分辨率只有印刷分辨率的四分之一,这个差距在纸上一目了然。
- 法律、医疗或档案类提交。这类要求往往直接写明最低分辨率,缩放过的文件可能仅凭这一条就被退回,无论它看上去多好。
- 无法重新拍摄的原件。如果文件已经归还、会议已经结束,或损坏已经修复,请把全分辨率版本妥善留存,只缩小你要发出去的那一份副本。
通用判断标准是:如果缩小后的版本被证明不够用,你还能重拍一次吗?如果能,尽管放心缩小。如果不能,就保留原件,只缩小副本。
操作的先后顺序
这里的顺序很重要,因为其中几个步骤会削弱下一步所依赖的输入。
尽你所能拍好
光线均匀、手机与纸面平行、双手放稳。纸质文件请用手机内置的扫描功能而不是相机——它会校正透视与光照,详见如何用手机扫描文件。后续任何环节都救不回一次糟糕的拍摄。
把副本缩到你的目标尺寸
屏幕阅读用长边 1600 px,打印或 OCR 用 2500 px。JPG 质量保持在 80–85 %。批量处理——macOS 用预览,Windows 用 PowerToys,iOS 用快捷指令。
设定好页面尺寸再转成 PDF
使用图片转 PDF,把页面拖成正确顺序,并有意识地选择 A4 或 Letter,而不是直接接受默认值。顺序是最常出错的一步——参见如何把多张照片合并成一个 PDF。
若文字需要可搜索,就运行 OCR
OCR PDF 会在图片下方写入一层不可见的文本层。请在任何进一步压缩之前完成这一步——压缩恰恰会让识别所依赖的字符边缘变得模糊。
只有仍然过大时才压缩
如果尺寸选得对,它不会过大。万一确实如此,PDF 压缩应是最后一步而非第一步,而且它已经没剩下多少可以去掉了。
如果 PDF 已经做好了
以上一切都假定你手里还有那些图片。但常常并没有——别人发给你一个 90 MB 的 PDF,或者那是你一个月前做的,照片早已不在了。
这种情况下,PDF 压缩就是正确的工具,它从另一端完成等价的工作:重新编码内嵌图片,并在它们相对于所在页面大得离谱时对其降采样。结果通常是大幅缩减,因为上文描述的那些多余分辨率,正是它会找到的东西。低于 10 MB 是一个稳妥的通用目标;面对较旧的机构门户则要低于 5 MB——这类门户往往比它们自己的说明所承认的更严格。
当仅靠压缩还不够时,有两条后续路径。PDF 拆分可以把过大的文档切成能分别发送的几部分,对一份冗长的扫描报告来说往往是务实的答案。而如果文件与其说是大,不如说是慢且笨重,那么问题也许根本不在体积——为什么有些 PDF 打开很慢讨论了 8 MB 的文件表现反而不如 40 MB 的那些情形。
常见问题
屏幕上阅读的一律 150 DPI;有可能打印时,200 DPI 是稳妥的默认值;高质量印刷或将要做 OCR 的扫描文字则用 300 DPI。在 A4 页面上,这三档大致对应长边 1240、1654 和 2480 像素。一张典型的手机照片是 4032 像素,放在 A4 页面上约为 487 DPI——远远超出屏幕或打印机实际能够呈现的水平。
能先缩小就先缩小。缩放去掉的是页面本来就无法显示的分辨率,因此不会损失任何可见内容。而压缩已完成的 PDF,去掉的是剩余像素中的信息,这正是过度压缩的页面在字母周围泛起涂抹感、以及 OCR 准确率下降的原因。如果 PDF 已经做好、图片也不在了,那么压缩就是正确的工具——只是它要去掉的东西更多。
在 macOS 上,于访达中选中它们,全部用预览打开,在边栏中全选,然后使用“工具 → 调整大小”。在 Windows 上,安装 PowerToys 并使用右键菜单中的“调整图片大小”,它会写出副本而不是覆盖原文件。在 iOS 上,用“调整图像大小”操作做一个快捷指令,从共享表单运行。请限制长边而不是宽度,这样竖幅与横幅图片才会落在相近的分辨率上。
只要保持在页面所能显示的分辨率之上,就不会。屏幕上 150 DPI、印刷中 300 DPI,缩放是看不出来的。它变得可见,是在你低于“页面上最小文字仍可辨读”的那一点时,或是把按屏幕尺寸准备的东西拿去打印时。转换前放大到最关键的最小细节检查一下——那里读得清,PDF 里就读得清。
会,而这正是不该缩小的主要理由。字符识别依靠单个字母中的细节,文字部分约 300 DPI 是实际下限。低于此值,准确率会迅速劣化,且失败是无声的——你得到一个文本层错误的可搜索 PDF,搜索因此失败却毫无提示。凡是要送去 OCR 的内容都请保持 300 DPI,并且在压缩之前而不是之后运行识别。
80 % 到 85 %。低于约 70 % 时,压缩噪点会开始出现在字母边缘,而那恰恰是一页文字中眼睛注视的位置。请先把尺寸定对,再把质量留高——一张 1240 像素宽、质量 85 % 的图片,明显好过 4032 像素、质量 30 % 的图片,而且生成的文件更小。