为什么pdf2ps/ps2pdf组合会缩小PDF?
在研究如何压缩一堆内置图片的PDF时(理想情况下是无损压缩,但我会接受有损压缩),我发现很多人建议这样做:为什么pdf2ps/ps2pdf组合会缩小PDF?,pdf,compression,Pdf,Compression,在研究如何压缩一堆内置图片的PDF时(理想情况下是无损压缩,但我会接受有损压缩),我发现很多人建议这样做: $ pdf2ps file.pdf $ ps2pdf file.ps 这管用!生成的文件较小,看起来至少足够好 如何/为什么这样做 在此过程中,我可以调整哪些设置 如果有一些有损转换,那是哪一个 陷阱在哪里 推荐这一手术的人很少是从专业知识或知识背景出发的,而是基于直觉 通过PostScript生成新PDF并返回(也称为“重新生成PDF”)的迂回过程永远不会给您带来最佳结果。有时它很有
$ pdf2ps file.pdf
$ ps2pdf file.ps
这管用!生成的文件较小,看起来至少足够好
- 如何/为什么这样做李>
- 在此过程中,我可以调整哪些设置李>
- 如果有一些有损转换,那是哪一个李>
- 陷阱在哪里
pdf2ps
和ps2pdf
工具根本不是一个独立的工具:它们只是围绕Ghostscript(gs
或gswin32c.exe
)命令行的简单包装脚本。您可以通过执行以下操作来检查:
cat $(which ps2pdf)
cat $(which pdf2ps)
这还将揭示这些简单包装器用于各自转换的(默认)参数
如果你运气不好,你将安装一个古老的鬼脚本。然后由pdf2ps
生成的PostScript将为1级PS,这对于许多字体来说是“有损”的,这些字体可以被更现代的PDF文件使用,从而导致以前的矢量字体光栅化。不完全是您想要查看的输出
由于这两种工具都在使用Ghostscript(但都是在背后),因此最好自己运行Ghostscript。这使您可以更好地控制它使用的参数。特别有利的是,通过这种方式,您可以直接获得PDF->PDF转换,而无需通过中间PostScript文件格式绕道
以下是一些答案,可以为您提供一些提示,说明您可以使用哪些参数来以半受控的方式降低输出PDF中的文件大小:
- (堆栈溢出)
- (堆栈溢出)