我试图在这里找到答案并使用GhosScript,但我无法成功。
所以,我有一个PDF文件,其中定义了CropBox和MediaBox。 CropBox / MediaBox比率在页面之间不同(特别是在标题页和文档的其余部分之间)。 我想要实现的是从每个页面中提取CropBox并使用它的MediaBox eqal将新PDF呈现给CropBox。基本上,我想将所有页面修剪为Cropbox,并在每个页面上将MediaBox eqal添加到此CropBox。
我可以使用ghostscript或任何其他cmd-line工具吗?
EDIT,
我终于通过Ghostscript管理了如何实现这个目标:
gs -dUseCropBox -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=out.pdf in.pdf
但在转换过程中,我收到的消息如下:
Page 74
Substituting font Helvetica for KAENAW+Helvetica.
这是否意味着对于简单的裁剪操作,我需要在我的系统中安装原始pdf使用的所有字体?鬼怪是如何工作的?我想,pdf并不需要被重新渲染"但这将是对内部维度数据的一些操作。
答案 0 :(得分:0)
如果没有看到你的文件,就无法确定是什么进行了。
您的原始文件很可能不包含Helvetica的嵌入式副本(尽管它的子集当然应该!)。允许PDF文件不包含' base 14'字体,包括Helvetica,可能你的文件没有,所以Ghostscript正在使用自己的Helvetica版本,当基础14字体丢失时应该发生什么,你可以离开他们出局是因为所有PDF用户都有这些消费者。
Ghostscript的pdfwrite设备没有(通常有例外)渲染PDF文件,但我认为EmbedAllFonts的默认设置为true,因此pdfwrite设备会在PDF文件中嵌入Helvetica的副本使用自己的副本创建。
如果您在某个地方发布文件,我可以看看。您还应确保使用当前版本的Gho stscript。