我在Ubuntu中使用pdflatex生成pdf文件,但是由于缺少字体,没有通过检查。网上的建议有:
- pdf-ps-pdf:虽然这样做会破坏原始文件。pdf 看起来很糟糕。
- 使用 latex-dvips-...:这个图像大小有问题。
- 使用 Adobe Reader,手动包含这些字体:Ubuntu 上不存在 Adobe Reader
我该如何继续?
答案1
ubuntu 中的系统查看器提供了一个简单的方法。使用系统查看器打开您的 pdf。点击文件->打印,选择打印到文件,然后打印。现在您就得到了它。生成的文件包含所有字体。您可以使用命令 pdffonts 进行检查
答案2
在 tex 帮助论坛上有很多关于此问题的帖子
你的 3 个选项不太好,可能没有帮助。我会使用 ghostsscript,但不知道它是否适合你的情况。
我很惊讶你现在遇到了这个问题。你使用的是哪个版本的 pdflatex?字体嵌入在新版本的 pdflatex 中。
但是,包含的图像文件中可能会缺少字体。您需要单独修复这些文件。例如,如果您使用 R 中的 pdf 包含文件,则字体不会嵌入其中,您需要修复图形文件,而不是保存它们的 pdflatex 文档。我最近使用 ghostscript 修复了这个问题。我不会考虑任何其他方法。
我认为特定的字体可能会有所不同。
在这种情况下,通常会有一个可重现的示例。收集详细信息并前往 tex.stackexchange 提问。
编辑中添加:
这是我运行的一个 shell 脚本,它使用 ghostscript 在目录中的所有 pdf 文件中插入字体。我将其命名为 embedFontInPDF.sh
#!/bin/bash
## Paul Johnson
## 2013-05-11
##
## R creates pdf files that do not have fonts embedded. This
## uses ghostscript to fix that. It takes all pdf in a directory
## and embeds fonts.
##
## Todo: Make command line argument smarter
for i in *.pdf; do
base=`basename $i .pdf`;
basenew="${base}/newtemp.pdf"
/usr/bin/gs -o $basenew -dNOPAUSE -dPDFSETTINGS=/prepress -sDEVICE=pdfwrite $i
mv -f $basenew $i
done;