article_image

我没有和任何厂商或独立开发者达成合作,因此没有义务“带货”。但如果一款工具极其优秀而鲜为人知,或者某个热门工具有更好的用法,那我就会毫不犹豫广而告之。

我从事政法类工作,经常制作超长篇幅的 PDF,离不开目录、页码和压缩三项操作;业余时间,我会把一些不便于随身携带的图书扫成 PDF,以供差旅途中阅读,同样涉及前述几项功能。

吾辈不喜欢把购买软件和解决划上等号,能用原生软件就用原生软件,能自己写脚本解决就自己动手。但制作 PDF,涉及很多进阶编辑功能,还是需要接纳专业工具。“专业”,也不等于 Adobe 或 PDF Expert,苟目标明确,往往可以找到轻量、便宜(甚至免费)的小工具,本文就以本人的真实处理流程为例,分享三款 macOS 上的 PDF 加工工具:PDF SqueezerPDFOutlinepdf Paginate Pro

从了解 PDF 处理流程开始

比起上来就聚焦某一款工具,管见以为,更重要的是了解整个 PDF 处理流程。如果不注重顺序,以为软件万能,那么往往会导致 PDF 数据丢失甚至文件损坏。许多涉及 PDF 的处理都会弄丢或者破坏一部分数据,例如 OCR 识别后的 PDF 往往会丢失目录,而压缩操作通常会彻底破坏文字层、令 OCR 成果付诸东流……若是不了解这些细节,难免会以为是工具自身的问题,错怪开发者的同时,也与解决问题的正确途径失之交臂。

Alt text
测试并记录适合自己的 PDF 处理流程

上图中所列问题大多是经验性的,并且受制于系统版本、编辑工具甚至电脑处理器,我收集的数据本身可能对你毫无意义,但方法却不应忽视。无论如何,我还是列出常见问题,建议亲自试一试,确定你自己的问题清单,并据此调整 PDF 加工顺序:

  • 压缩 PDF 后,文字层一般会破损或消失;
  • 用 DEVONthink OCR PDF 后,批注和目录会消失;
  • 在 Preview(预览工具)中直接编辑页面,有很大概率导致文字层破损;
  • 用多个编辑器同时读取同一份 PDF,很可能导致文字层破损;
  • ……

在我测试的场景中,为避开上述问题,比较合理的处理流程就是先压缩、再 OCR、最后添加目录,并尽可能避免在制作完成后编辑 PDF 本身——包括增减页面、调整页面顺序或二次压缩等操作。

华罗庚曾以烧水煮茶为例,剖析顺序——用效率这个小圈子的话来说,就是“XX管理”——的重要性,而一个人如果不统观全局就开始使用工具,恐怕和那些干等水烧开的人一样误入歧途。

压缩体积:PDF Squeezer

扫描版 PDF 通常需要压缩体积。尤其是自制的 PDF,因为现在的手机分辨率极高,制作出来的扫描件通常大的没有必要——这固然也是相对的,如果一个人希望制作古籍或画册的电子版,那么再怎样追求画质也不过分;但以文字为主的内容,则是能够看清即可,再清晰一些就是浪费电脑空间了。

网上纵然有不少压缩服务,可一来万万不可把机密数据传上去,二来可以想见,这些网站难保不涉足盗版。于是本地压缩工具成了唯一选择。1我选用了小巧的压缩工具 PDF Squeezer,从前两个大版本一直用到现在。最新版本的 PDF Squeezer 加了一个效果预览窗口,可以对比压缩前后的画质,满意了再导出——压缩和预览都不花钱,只有导出时才需付费(买断),不怕开错盲盒。

Alt text
用 PDF Squeezer 压缩文件

和 Scanner 类似,PDF Squeezer 也是那种默默无闻的工具,除了自己那一亩三分地,从来不觊觎其他工具的领地,这种精神让人佩服:不用担心昔日的灵巧手术刀,忽然有一日膨胀成需要两个人才能抬起来的电锯。

不过,与在线服务相比,PDF Squeezer 既然依赖于本地硬件,其速度也就不太乐观,以 M1 芯片的入门款电脑为例,两三百页的文件可能要用上一个小时,因此建议先摘几页出来、压缩一下看看效果是否满意,确定合适的压缩比率后再整本加工,以免苦等半天却得来垃圾文件。

创建目录:PDFOutline

没有目录的 PDF,如同不带导航的出国自驾游,让人无所适从。

各个工序中,最无害的恐怕就是插入目录(Table of Contents, TOC),不过多数阅读器或编辑器对目录编辑都力有未逮,如果你上网搜索“mac pdf add toc”,搜索结果大概已经被某几个营销页面霸占了。

除了那些年久失修的开源项目,我还找到了一款轻量级目录编辑工具——PDFOutline,其不仅可以添加、删除或调整目录入口(entries)顺序,还能调整层级,适合给章节布置复杂的图书自制目录。

Alt text
用 PDFOutline 为书籍创建目录

当然,也有能够一次性导入目录的工具(但基本只有 Windows 版),不过管见以为,编辑目录是了解待读书籍的第一步2:如果连图书结构都不清楚,就贸然开始阅读,显然操之过急,而常常听到的“读目录”之劝告,实践起来却如同要一个青春期的少年忍住别看色情杂志一样困难,此时,手动编辑目录,一个章节一个章节加上去,如同前往异国他乡前熟读地图一样,本就不能省去。

具体而言,我不会照搬书籍原本的目录,而是先细细标出打算阅读的章节,其余留到以后再说,以免占用当前时间;而作者和出版商提供的目录如果太粗(很多书只有简目),我也会从头到尾翻一遍待读部分,将目录细化到三级甚至四级。

添加页码:pdf Paginate Pro

本节截图的 pdf Paginate Pro 为旧版,如今 Mac App Store 中的版本已经更新为跨平台版本,界面有较大变动,功能不变。个人并不喜欢新版,已自行编写工具,请参见上周的会员文章。

在别处扫描得来的图书中,目录更加重要;而自己编写的文档,则更需要页码。能够添加页码的工具不少,但 pdf Paginate Pro 胜在通用,其所谓的页码其实是注释(Annotations),几乎所有 PDF 阅读器——包括原生预览工具——都可以继续修改,偶尔需要移除或替换几页,非常方便。

Alt text
用 pdf Paginate Pro 添加页码

其他软件往往不采用注释,例如 WPS 创建的页码就是嵌入 PDF 的,似乎只有特定的几款编辑器可以修改或删除(不保证此断言适用于所有系统所有版本的 WPS),我同事用 WPS 添加的页码,我就改不了,每次还要麻烦本尊,非常恼人。

小结

有人喜欢格式工厂式的超大型软件,这种行事风格倒无可非议;但把鸡蛋都放进一个篮子里,则太依赖某个特定厂商,也害怕出现“单点故障”,因为一点系统兼容性或纯粹政策方面的原因就用不上整套工具。相比之下,我更喜欢弄清自己要处理的任务,然后用最轻巧的工具解决它们。


  1. 如果对隐私或商业秘密有较高需求,可以在系统防火墙中进一步封锁 PDF 处理工具的联网权限,避免其上传文件。
  2. 或者检查自己所写文档的最后一步。

author_avatar

Lawyer, macOS/iOS Automation Amateur