Word文档转PDF大抵有以下几种方法:
- 用Word内置的另存为PDF;
- 用Adobe Acrobat、PDFcreator之类的软件带的PDF Printer打印成PDF;
- 用Adobe Acrobat等软件转换成PDF。
Word内置的另存为PDF
一言以蔽之,Word内置的转PDF尽量避免。不过,在研究过程中发现Word这个PDF另存为有很多吊诡的地方,所以详细谈一谈。
首先,图片分辨率大于等于一定PPI阈值的会被压缩到200。注意,这里的PPI是真实PPI——也就是说用图像的像素数你在Word里设置的尺寸,而不是图像metatag里的名义DPI。譬如说,你有个3000px宽的图名义DPI是96,但是你放到Word里设成宽度2″,那他的真实PPI其实是3000/2=1500。而你另存为PDF之后,这个图就会变成一个200*2=400px宽,外加metatag为200DPI的图。那么这个阈值是多少呢?想当然的话是200,然而并不是。经过简单的测试,阈值位于(250,300]区间,因为我测试了250PPI是不会被二压尺寸的,而300的则会被二压到200PPI。具体多少没有测,可能就是300。Word的缩放算法比较一般,估计是平均像素,也不算问题很大。
其次,保存成PDF时,无损的图有可能会继续保留为无损,JPEG则必然是JPEG(所以自然会2压)。为什么说可能?在我测试过程中,出现过以下现象:
- 一张不会被二压的图用画笔涂了几笔之后(尺寸啊DPI啊完全不变,不过这会导致PNG文件大小增加),立刻就会被二压;
- 某个图单独帖进Word文档存PDF不会二压,结果和另一张图一起就会全都被二压;
- 同时帖进5张尺寸不一的PNG,会出现有些被二压,有些不被二压的现象。
我的推测是,二压与否首先与图像的文件大小(可能是绝对也可能是相对)有关。凡是超过一定阈值,就会被二压(这可以解释上面第一条、第三条);另外可能还和文件总大小或者每页大小有关:超过一定阈值就全部二压,这能解释上面的第二条。
其JPEG压缩率也偏高,通过JPEGSnoop看量化表,是75%质量的4:2:0色度抽样JPEG。顺便一提,任何JPEG图像,插入Word的一瞬间就会被二压(90%质量,4:2:2)。所以请尽量避免在Word中贴JPEG图片,尤其是图表之类的用无损效果又好体积又比JPEG小。
另外,我几乎可以很确定地说,Word PDF输出的图像质量/分辨率是无法直接更改的。这里谣言终结一下几个网上经常提的方法:
另存为时右下角的工具-压缩图片:
先厘清一点:这个工具只有在你点的时候才会使用——也就是说,默认是“不使用”状态,也就是不压缩图片(相当于这个工具里的最后一个选项)的状态,而不是你点开这个工具时的默认选项。另外,这个工具其实是独立于保存/另存为的,什么意思?就是说实际过程是先压缩图片,然后另存为/保存;而不是“保存时压缩图片”。这也产生一个问题:在你点下这个工具并且选了一个非最后一个选项并确定的时候,你的当前文档里的图片就被压缩了!哪怕你最后另存为框点的是“取消”,你的图片也已经压缩过了——而且无法Ctrl+Z!所以,千万要小心不要因此把你文档里的图片毁掉!不过MS估计也想到这个问题,如果你点了压缩图片又另存为PDF之后(或者取消另存为框后)你会发现你的图变糊了,这时候不进行任何操作立刻关闭该文档,那么恭喜你不会压缩你的图片。但是如果你之后又对文档进行了修改再保存,你Word里的图就全毁掉撸(当然你可以选择关闭不保存……那就变成你压缩图片之前没保存的修改全没了)。而且不要忘了,如果是JPEG,图片会被二压多少次你自己算算:
原始图JPEG->复制进Word(二压90%)->压缩图片PPI(缩图外加再二压一次90%)->另存为PDF(再二压75%)
这效果不用我说了吧,基本处于毛都看不见的状态,这里贴个样图:

总而言之,压缩图片这个工具慎用!如果一定要用,先保存你的所有修改然后备份你的文档!
选项-高级-图像大小和质量里的几个选项:
这里有俩选项有关,一个是“不压缩文件中的图像”,一个是“将默认目标输出设置为:”,选项有330、220、150和96PPI。
和上面的大杀器压缩图片一样,这个选项和保存PDF没直接关系。这个选项的实际作用是,如果你没有勾选第一个(也就是你想要压缩),那么每次你保存并退出该文档时,所有超过你选的PPI的图会被压缩成你选的PPI。这里(还有上面那个压缩图片)据我短暂的观察应该是不会有无损图变JPEG的劳什子,不过还是小心为妙。
我不清楚这个选项的默认状态是啥,不过我强烈推荐直接将“不压缩文件中的图像”勾上,完全不压缩你插入图像的分辨率。这样可以最大限度地保存图像的质量。真有需要,最后输出的时候再另存为一份修改该选项就是。
可以看到,这俩方法的本质都是直接修改你文档里图的分辨率,而不是仅仅修改输出的PDF里图片的分辨率。而且都有很大的局限性:依然无法解决75% JPEG的质量问题;依然无法输出大于200 PPI的图片。所以,想靠Word自带的另存为PDF来输出高质量图片的PDF是行不通的。这其实挺可惜的,因为据我观察对原始Word文档还原度最高的还是Word自带的另存为,Adobe家的多少有点出入(虽然很小啦)。
PDF打印机
PDF打印机算是一种比较万能的制作PDF的方法,这里也适用。下面以Adobe PDF printer为例,其他软件应该大同小异。
调整图像的质量是在打印-打印机-打印机属性处进行的。打开该对话框之后,在“布局”选项卡下方的高级里是可以调DPI,不过那个是给一般的物理打印机用的,这里没必要去那里改(而且那里改了也没用,那不是图片的质量)。直接进入第三个选项卡:

这里第一个Setting就是选质量了。点“Edit…”里面有详情:

这里展示的是自带的“High Quality Print”选项(Maximum=92%质量,4:4:4无色度抽样),其实一般用途已经非常不错。最好不要用默认的Standard,分辨率是150PPI不谈,那个压缩率也高了点。当然,如果还是觉得不满意,甚至可以直接把Downsample和Compression关掉,会得到你Word里原汁原味的图。
不过,PDF Printer有个问题。PDF Printer设计的目的并不是为了制作电子阅览版的PDF,而是用来打印的PDF。所以,你会发现有个问题:打印出来的PDF,图片会被拆分成一块一块的:

其原因我猜大概是为了真·打印机的Buffer大小着想。当然,单纯用来看没大问题,不过总是觉得挺别扭的,而且没法再提取完整的图像了。
另外,今天研究过程中发现了一个非常奇怪的BUG:无论我怎么选,在各种地方选,我那个Letter尺寸的文档打出来的PDF都是A4。甚至我直接把页面改成个正方形的之后,PDF打印出来还是A4。在我抓狂之际,在Adobe论坛发现了原因。原来Word里有个在我看来相当脑残的选项,叫做“缩放内容以适应 A4 或 8.5″ x 11″ 纸张大小”(后者就是Letter)在“高级”里。这个选项默认是勾选的,结果就是不管你文档是什么尺寸,打印出来永远是A4或是Letter(美国地区)。当然为啥我学校的英文版Word也是强制A4而不是Letter我就不得而知了。
另存为Adobe PDF
其实这个是我今天第一个试的方案……但是说来惭愧,当时一时没找到哪里改质量(汗)。后来发现从Word里的话就是在Acrobat那个附加工具栏里,先Preferences里选一下就是(界面和上面那个一样)。如果直接用Acrobat软件界面来搞,就要进设置里找到Convert to PDF对应Word的选项了。
这个方法的优点就是没有上面的说的图像分块的问题,每个图像还是完整的一坨。也是最推荐的。
P.S. 文中所有的JPEG图像质量检测都是通过PDF Image
Extraction Wizard(就是xpdf这个开源命令行工具的GUI)直接从PDF中无损提取图像检测。
P.S. 2 Acrobat算是我现在少数几个离不开的盗版软件了……再算上PS,Adobe你好嘢!





