【发布时间】:2012-08-23 17:16:09
【问题描述】:
在基于 linux 的 ftp 服务器上,我需要在基于浏览器的界面中提供图像数据的预览以及打印质量的 PDF 文档。我使用的服务器软件(crushFTP)推荐使用 Imagemagick 来创建这样的预览,并为命令行提供了相应的预设。通过使用 convert 命令,它会创建不同大小的 jpg,并将它们保存在单独的文件夹 (/previews) 中,其中包含以原始文件命名的子文件夹。原始文件本身保持不变。对于各种图像数据,这工作得很好,至于 PDF 文件(在这个意义上也是 Adobe Illustrator 文件)我遇到了某些问题。通过 crushFTP 日志,Imagemagick 使用的 Ghostscript 委托无法找到 PDF 中使用的字体。 在尝试了几件事后,我了解到在各自的 PDF 中,字体没有完全嵌入,而是子集。由于 PDF 文件是由第三方提供的,因此不能完全嵌入字体。然而,具有完全嵌入字体的 PDF 被转换并且预览看起来不错。 在 Ghostscript 的字体映射中包含字体只能是一种临时解决方法(因为字体可用 - 合法 - 但一旦 PDF 文件提供程序使用新字体,Ghostscript 将无法再解码文件)。 因此我的问题是:有没有一种方法可以通过 Imagemagick 和/或 Ghostscript 转换具有子集字体的 PDF 文件,而不必在 Ghostscript 的字体映射中包含这些字体?如果是这样,如何做到这一点?如果没有办法,您能否推荐另一种创建此类预览的方法?
【问题讨论】:
标签: pdf imagemagick preview jpeg ghostscript