Mac 里 PDF 的那些事

2018.05.09

研究 PDF 格式才发现它蕴含着好大一个坑,OS X 和 Windows 都在系统层面对 PDF 格式进行了支持,很多软件里也可以直接另存或导出成 PDF,但是 PDF 格式的查看和注释是另一个体系,除此之外 PDF 格式内容的识别和检索又是一个体系,如果再算上因为 PDF 文档的学术背景所涉及到的文档管理,就有四个方面的问题需要搞清楚:存储成 PDF、查看 PDF、 PDF 内容检索和 OCR、管理 PDF。

PDF 格式为什么会牵扯到这么多东西,我想和它的定位是有关的,最初被 Adobe 发明出来以后,主要是应用在桌面出版上,追求「所见即所得」的内容还原,可以在其他的应用环境和平台中准确的实现内容重现。能做到这一点,原理上是因为文档被转成 PDF 格式其实是经历了一个「虚拟打印」的过程,最后记录下来的已经不再是文本和字体,而是描述文件、曲线和坐标。这使得 PDF 文档的尺寸会比传统的文档更小,内容可以平滑的缩放(仅文字和图形,图片受限于其原始的分辨率),而且对应用环境没那么多挑剔,用浏览器或者 PDF 查看软件就能查看和打印。

能正常查看 PDF 文档,并不意味着能像 Word 这样的软件一样复制 PDF 文档中的内容,PDF 文档的表现层和内容层是相对独立的,大多数用常见字体生成的 PDF 文档因为解释器能识别字体和编码可以正常的复制和检索内容,但是如果制作和输出 PDF 时选择的是非常见字体,那么复制出来就会乱码,如果要拷贝这部分内容只借助 OCR 扫描进行文字识别。

扫描类的 PDF 文档是文字 PDF 之外的另一个大的 PDF 分类,因为图片的原因文档的容量都不会太小,而且在 OCR 识别完成之前没法对内容进行搜索,所以扫描仪配套的软件中通常还会包含 OCR 文字识别的软件,可以对图片中的文本进行识别和转换,从而实现对内容的检索查询。字体清晰标准的书籍,文字识别的准确率相当高,除了扫描仪随机附带的 OCR 软件之外,常用的 OCR 软件有:Adobe Acrobat、ABBYY FineReader(PC)、OneNote(Windows 版)、TextGrabber(iOS) 。

众多的 PDF 文档的处理软件中,Adobe 的 Acrobat 无疑是最强大的,从 PDF 文档的格式处理、表单、加密到识别、转换,功能齐整专业,但是价格太高,不是一般人能承受的起的,所以遇到非标准的文字类型的 PDF 文件时,如果想复制其中的内容,简单的方法反而是将它存成图片,用 OCR 软件进行识别。OCR 识别软件中收费的 ABBYY FineReader 最强悍,识别准确率和效率都令人满意,免费的 CAJViewer 则只能通过工具栏工具实现局部的圈选识别,而且只有 Windows 平台的版本。

存储成 PDF

Mac OS X 中内置了对 PDF 格式的输出和预览, Finder 中直接空格进行预览,双击用「预览」程序打开。文档类软件的菜单里选择「导出为 PDF」或者由打印输出的设置中选择「存储为 PDF」都能简单的存储成 PDF 格式。 Mac 中通过打印的方式生成 PDF 文件比导出多了一些输出设置,例如,安全性选项(需要密码打开、复制、打印)、每张打印的页数布局等等。

第三方应用以及 Parallels Desktop 虚拟机(共享打印机)都可以利用 OS X 的打印功能来输出 PDF。除此之外,还有一些软件自己就支持 PDF 格式的输出,例如,Scrivener、Ulysses 。Scrivener 通过编译(File - Compile)选择输出成 PDF 格式,设置中还包括比较实用的目录输出选择和字体替换选项;Ulysses 通过「快速导出」输出 PDF,依据「富文本」样式中的样式选择生成不同风格的 PDF 文档。

通常 PDF 文档中的版式和字体是正文内容决定的,如 Pages、文本编辑等,Scrivener 的逻辑不太一样,是由「编译」设置决定最后的输出风格,所以可以和编辑区中的正文不同;Ulysses 的 PDF 格式风格由选定的样式风格决定,在这一点上和 Scrivener 类似。要保证输出的 PDF 在 PDF 查看软件中可搜索和进行内容复制,需要注意字体的问题,使用常见的字体,例如:Helvetica Neue、Helvetica、黑体、微软雅黑等。Scrivener 和 Pages 不同,不用修改正文字体,可以在「编译」设置中选择「替换字体」为「Helvetica」这样的常用字体,这样生成的 PDF 文件不仅能正常的复制和检索内容,而且可以在 Word 2013 里正常的被转换成 .docx。

扫描成 PDF

扫描稿的 PDF 核心主要是图片和 OCR 文本识别,虽然存储的内容是一页页图片,但是在通过 OCR 识别以后,同样可以进行检索和内容的复制。用这种方式来管理传统资料和实现无纸化办公已经成为一种新的趋势。

一台双面扫描仪,一个配套的软件,一键之后一堆照片、票据、文稿就通过扫描仪变成电子文档,还可以自动进行分类。Evernote Market 里的 ScanSnap 无线扫描仪是富士通 ScanSnap iX500 的 Evernote 定制款,配合 Evernote 很是高大上,扫描结果会自动归类保存到 Evernote 当中(需要 Evernote 高级账户)。如果想扫描以后生成 PDF 或由自己决定是否导入到 Evernote,可以单独购买 ScanSnap iX500。

办公应用中通过扫描仪我们能实现对票据、纸质文件的电子化,生活中则可以用来将纸质书籍电子化。如图所示,用「厚层切纸机」切掉书脊,按每次 25 页的数量将书页放到 ScanSnap iX500 双面扫描仪中扫描,电脑或 iPad 上安装的随机软件 ScanSnap Manager 里会动态的显示扫描结果,最后存储成 PDF 文稿就可以在平板或电脑上阅读,iPad 上推荐使用 GoodReader 阅读并标注。

纸质书籍的电子化

PDF 文件的查看

PDF 格式是由 Adobe 公司发明的,按道理说 Adobe 的 Adobe Reader 和 Acrobat 应该是查看和标注 PDF 格式的首选,大多数情况下也确实如此,不过 Acrobat 的价格太高,Adobe Reader 的体积又太大,这让纠结的我们选择了其他的应用。

如果只是查看,Mac 系统内置的「预览」很多时候就足够了。少量诡异的 PDF 文件使用 Chrome 浏览器查看,很多时候 Chrome 的表现比 Adobe Reader 还要优秀,但是遇到 PDF 表单填写还是 Adobe Reader 更强。PDF 标注和笔记值得推荐的第三方软件有:Skim(OS X)、Foxit Reader(Windows)、GoodReader(iOS)。

Mac 里装上 Chrome 浏览器, Windows 虚拟机里装上 Foxit Reader,PDF 格式的查看从此就不再是问题了。另外,DEVONthink Pro、Scrivener、Papers 这些软件也有自己的 PDF 查看器,在管理 PDF 文档的同时可以很方便的进行预览和注释。这三款软件中,Scrivener 侧重的是写作,DEVONthink Pro 是文档管理 ,Papers 是文献管理和引用(PDF 被广泛的应用在学术文献的长期保存上,所以如果是写论文查资料推荐使用 Papers)。

有些 PDF 文件用 Adobe Reader 或 Foxit Reader 都打不开,也没有什么提示,可以将 Foxit Reader 偏好设置中「允许运行 JavaScript」的勾选去掉再打开。

PDF 文件的检索和 OCR

PDF 一般都包含两层,基于字体的文本层和用于打印输出的 PostScript 层,因此也是可检索和复制的,但是并不是所有的字体都支持。扫描的 PDF 可以包含 OCR 文字,并且直接放在每个可视文本后面的不可见的层上,这样既确保了文档可以检索,又同时完全保留了文档的原貌。

扫描 PDF 的文本层是通过 OCR 扫描获得的,例如,Evernote 高级账户支持自动对 PDF、图片类附件的 OCR 识别,以便能方便的进行检索,支持 OCR 识别和将扫描 PDF 中的内容 OCR 形成新的文档是两回事,Evernote 属于前者只识别并存入 PDF 的文字层,FineReader 属于后者,专门用来将扫描 PDF 文件转成其他文档格式。如果只是作为资料存储,前者的方式就足够了。

FineReader 界面

针对文本类型的 PDF,为了验证各种字体在生成 PDF 后的可检索性,分别在 Mac 和 Windows 中用常用的字体导出了一份 PDF 文件(在 Pages 或 Word 中制作一份包含 N 行相同内容的文本,每行设定为不同的字体),然后分别在「预览(OS X)」或「阅读器(Windows 8.1)」中进行内容搜索,搜索后无法高亮的就可以判断为无法识别。

经过实验,Mac 中输出的 PDF 文件,分别在两个系统中查看时,不支持搜索的中文字体包括:华文宋体、圆体-简、娃娃体-简、宋体-简、手札体-简、思源黑体。
Windows 使用 Word 同样制作了一份常用字体的 PDF 文件,为了统一,在 Windows 中还安装了 Mac 系统的冬青黑字体,不过输出的结果无法检索的中文字体只有:冬青黑、华文宋体、方正大标宋。

刚看到测试结果的时候,自己也有点诧异,大多数字体都正常,包括自己平时很少用到的一些,例如:方正综艺、新书宋、宋三、小隶体、准雅宋、新宋体等等都没有问题,有意思的是安装到 Windows 的冬青黑输出的 PDF 不支持对内容的检索,反过来 Mac 系统里安装的微软雅黑反而正常。

管理 PDF

从商务和公司应用层面来说,我倾向于把 PDF 作为文档来管理,利用 Finder 和 Spotlight 来存储和搜索,归档性质的 PDF 文档用 DEVONthink Pro 来进行集中的管理和检索定位。

Evernote 也可以用来管理 PDF 文件,不过在针对扫描 PDF 文件,在 OCR 检索识别上有一些需要满足的条件:单个文档的大小在 20MB 以内并少于100页、PDF文档未受密码保护、需要是印象笔记高级帐户、对图片和PDF内的文字识别过程是在服务器端进行的,新上传的内容需要一点时间。

学生和科研工作者可以看看维基百科里「文献管理软件比较」的介绍,选择 PapersEndNote 这样的专业文献管理软件来管理 PDF 和在论文中引用。

DEVONthink Pro、Papers偏好设置界面

DEVONthink Pro、Papers 都是收费的应用,在选择前可以从官方网站下载试用版体验一下,看看是否适合自己的应用环境,Evernote 的高级账户可以按月支付(¥30),在体验到高级版的功能以后再决定是否添置扫描仪或按年付费使用。

PDF Expert 属于 PDF 编辑和查看的后起之秀,阅读、批注,编辑文本,添加照片,填写表单等,功能完整,并同时支持 Mac 和 iOS 平台,可以同步。

MarginNote 是一款阅读笔记应用,支持 PDF、ePub 等电子书格式的阅读和批注,提供了学习卡片和思维导图形式的附注内容整理。

在 iOS 设备上查看 PDF 文件

通过 iCloud Drive 的同步,iOS 设备和 Mac 之间可以非常方便的共享 PDF 文档,实现在 Mac 上保存并在 iOS 设备上阅读和查看。

iOS 上安装上 GoodReader 并往 iCloud 文件夹下随便保存一个文件,稍后在 Mac 上通过 Finder 刷新 iCloud Drive 文件夹就能看到新增加的 GoodReader 文件夹,通过这个文件夹就能实现 PDF 文档在设备之间的共享传递。另一种操作方式就是在 GoodReader 里点击右上角的设置,由文件操作里选择「Import - Import from iCloud Drive」 就能访问 iCloud Drive 其他的文件夹并复制文件到 iOS 设备中。

GoodReader-iCloud Drive

iOS 上其他类似的软件还有 FileBrowser 和 Documents,FileBrowser 里进入远程文件 iCloud 文件夹后,由底部的最左侧的图标选择「Import from iCloud」 就能从 iCloud Drive 和 Dropbox 导入文件,不过 FileBrowser 只是做文件操作用,如果要查看文件还要依赖于系统内置的 PDF 阅读器或者 GoodReader、Documents这样的软件。

FileBrowser 和 GoodReader 的侧重还是文件管理,单纯的 PDF 阅读、批注、签名和 PDF 文件管理推荐使用 PDF Expert ,PDF Expert 兼容 Apple 全平台产品:Mac、iPad、iPhone,可以跨设备无缝传输文档。

一些和 PDF 有关的技巧

合并 PDF

在「预览」程序中同时打开要合并的 PDF 文档,选取「显示-缩略图」以打开「缩略图」面板。可以点按页面缩略图拖拽到要合并的 PDF 文件中。(多个页面按 Shift 键或 Command 键选中)。 在边栏中上下拖移还可以调整页面顺序。

OS X:使用「预览」合并 PDF 文稿

给 PDF 添加封面

给 PDF 文件添加封面的操作也合并 PDF 类似,从桌面或 Finder 图片文件夹拖移图片到「预览」的边栏缩略图的起始位置即可。

在 PDF 文件中签名

「预览」程序中有签名功能,点击「标记」图标展开工具栏,签名工具既可以直接在触摸板上签名,也可以写在白纸上通过摄像头拍照获取。

安装 Adobe 的 PDF 字体

安装上 Adobe 的 PDF 字体 能解决很多中英文混排的 PDF 乱码问题。PS:字体是安装 Adobe Reader 后从软件中提取出来的。

--「壹页单章」会员计划 --

Comments
Write a Comment