【问题标题】:Embed fonts with Ghostscript, but keep everything else as-is使用 Ghostscript 嵌入字体,但保持其他所有内容不变
【发布时间】:2014-03-07 15:25:48
【问题描述】:

我们正在寻找可以重新嵌入字体的软件,而 Ghostscript 看起来是一个可能的解决方案。 我们一直在查看文档,但不确定如何获得我们想要的结果。

案例: 我们有一个嵌入了所有字体的 PDF,但 PDF 在我们的打印机 RIP 中失败 我们已经成功使用 Ghostscript 对字体进行子集化。这似乎以某种方式修复了字体,并使 PDF 在打印机 RIP 中工作。我们使用这个命令:

C:\Program Files\gs\gs9.10\bin\gswin64c.exe" -dBATCH -dNOPAUSE -dPDFSETTINGS=/prepress -sDEVICE=pdfwrite -sOutputFile="C:\test2.pdf" -dAutoRotatePages=/None -dCompressFonts=false -dSubsetFonts=true -dEmbedAllFonts=true -dAutoFilterColorImages=false -dAutoFilterGrayImages=false -dDownsampleColorImages=false -dDownsampleGrayImages=false -dDownsampleMonoImages=false -c ".setpdfwrite > setdistillerparams" -f "C:\测试.pdf"

现在,我们唯一想做和/或更改的事情就是对字体进行子集化,并保持一切“原样”——但上面的命令似乎对图像和文本做了一些事情。

有人知道如何让 Ghostscript 只嵌入字体吗?

【问题讨论】:

    标签: ghostscript


    【解决方案1】:

    您无法使用 Ghostscript pdfwrite 设备保持一切“原样”。我之前已经在 SO 上解释过这一点,但又来了;

    Ghostscript 和 pdfwrite 不会简单地修改现有的 PDF 文件,源 PDF 文件会被完全解释,并转换为一系列传递给设备的图形基元。通常,设备随后会使用图形库将图元渲染为位图。在 pdfwrite 的情况下,图形基元被重新组合成一个全新的 PDF 文件。

    这意味着生成的 PDF 文件与原始 PDF 文件除了外观之外没有任何共同之处。

    没有看到您的原始 PDF 文件,我无法说出输入和输出之间可能有什么不同,您也没有说出为什么会出现问题。通过不指定所有这些命令行参数,特别是 -dPDFSETTINGS,您“可能”更接近您想要的,默认行为是尽可能保持输入不变。但是,您绝对无法做到的一件事是“按原样”保留原始文件,这不是应用程序的工作方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-11
      • 2021-03-29
      • 1970-01-01
      • 2017-09-29
      • 1970-01-01
      • 2011-04-21
      • 2016-12-21
      • 1970-01-01
      相关资源
      最近更新 更多