如何让Ghostscript在PDF中使用嵌入字体

时间:2010-04-19 20:55:26

标签: pdf ubuntu fonts postscript ghostscript

gs -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dBATCH \
   -sDEVICE=pdfwrite -sOutputFile=output.pdf input.pdf

我正在使用(无论如何)尝试使用Ghostscript来减少我的PDF文件大小。上面的命令看起来像它的工作,它大大减少了文件大小,但随后几个字段出现乱码。至于我可以追踪它,它正在进行字体替换。 IE,同一文本=相同的乱码文本。

字体嵌入到PDF中。另外,我试图将所有字体添加到Fontmap中。

任何想法,理想情况下我希望它使用嵌入式字体而不必更新gs系统字体/编辑字体图等。我使用的是Ubuntu 9.10,嵌入的字体是Windows字体,Arial / TimesNewRoman。< / p>

感谢。

1 个答案:

答案 0 :(得分:15)

回溯嵌入未嵌入原始PDF的字体会增加文件大小,而不是减少文件大小。

但是,仍有可能通过降低嵌入图像的分辨率来缩小整体文件大小...取决于您的偏好和需求。

您可以尝试使用以下命令行的变体。它将嵌入所有字体(甚至是“Base 14”字体),但仅嵌入所需的字形(原始字体的“子集”),并且还压缩字体:

gs \
   -dCompatibilityLevel=1.4 \
   -dPDFSETTINGS=/screen \
   -dCompressFonts=true \
   -dSubsetFonts=true \
   -dNOPAUSE \
   -dBATCH \
   -sDEVICE=pdfwrite \
   -sOutputFile=output.pdf \
   -c ".setpdfwrite <</NeverEmbed [ ]>> setdistillerparams" \
   -f input.pdf