在使用 pdflatex 编译时嵌入所有字体?

在使用 pdflatex 编译时嵌入所有字体?

我的论文本身没有嵌入字体TimesNewRomanPS-BoldMT,因此无法通过 IEEE 提交检查。

我可以通过打印 PDF 将其嵌入 Acrobat。但是我发现这会稍微改变纸张的颜色。

因此,我希望找到一种直接的方法来生成已使用 pdflatex 嵌入所有字体的 PDF。

作为这个答案提示,文件pdftexDownloadBase14中的设置updmap.cfg确实设置为 true。但是,它仍然没有嵌入。

我该如何修复这个问题?

如果重要的话,我在 Windows 下使用 Texmaker。

答案1

我理解你的痛苦,我刚才在 IEEE 会议上也遇到过同样的情况。似乎没有任何地方能给出明确或简单的答案。我想知道他们为什么不让这件事变得更容易一些。

这对我有用,我希望它对你也有用:

  1. 打开你的 pdf 文件,
  2. 选择文件 -> 打印
  3. 将你的打印机设置为 Adob​​e 打印机(假设你已经安装了它)
  4. 点击属性
  5. 点击“Adobe PDF 设置”选项卡
  6. 取消选中“仅依赖系统字体;不使用文档字体”
  7. 单击默认设置后的编辑...
  8. 点击字体,将缺失的字体添加到“始终嵌入”(建议将属性保存为新设置。)
  9. 使用新设置打印 pdf 文件,您的新 pdf 文件就可以使用了。

提示:当(或如果)它要求您保存 PDF 设置文件时,请将其保存在建议的 Adob​​e 设置文件夹中

来源: 点击这里

答案2

如果您在 Windows 中使用 TeXStudio,请转到选项->配置 TeXstudio->命令->Ps2Pdf。在该字段中,只需粘贴

ps2pdf.exe -dPDFSETTINGS#/prepress -dEmbedAllFonts#true -dMaxSubsetPct#100 -dCompatibilityLevel#1.3 %.ps

这将在编译时直接嵌入所有字体。

您可以从 Windows 命令提示符手动执行此操作。在 Windows 命令提示符中,导航到 .ps 文件的位置并粘贴

ps2pdf -dPDFSETTINGS#/prepress -dEmbedAllFonts#true -dMaxSubsetPct#100 -dCompatibilityLevel#1.3 file_name.ps file_name.pdf

我猜,对于 Linux 机器,你只需要使用“=”代替“#”

答案3

虽然我无法在编译时嵌入字体,但我找到了这个解决方案。

生成您的pdf,使用pdf2ps将其转换为postscript文件,然后在嵌入字体的同时将其转换回pdf。linux中的命令: pdf2ps doc.pdf ps2pdf14 -dPDFSETTINGS=/prepress doc.ps doc2.pdf

答案4

您可以利用 Adob​​e Acrobat Pro 的预检功能。恕我直言,这是最简单的方法。以下是教程:https://www.youtube.com/watch?v=9SdIVy2D4b4

相关内容