在Latex编译出的文件中嵌入所有字体

IEEE 提交论文时,需要在PDF eXpress网站进行格式检查和转换,貌似经常遇到的问题是xxx字体没有嵌入

对于win/word用户,修正pdf虚拟打印选项即可解决。然而对于latex用户,可能需要花一些功夫。

下面说一个最简单的解决方案,所有工具都是texlive自带的,直接用即可:

  1. 转换到ps: pdftops 你的文件.pdf
  2. 用合适的设置转换回pdf: ps2pdf14 -dPDFSETTINGS=/prepress 你的文件.ps
  3. 检查: pdffonts 转换后的文件.pdf

示例输出:

name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
IBKDQL+CMSY8                         Type 1C           Custom           yes yes no      10  0
LBKQTQ+NimbusRomNo9L-MediItal        Type 1C           WinAnsi          yes yes no      12  0
QFWVDB+NimbusRomNo9L-Medi            Type 1C           Custom           yes yes no      14  0
PMAINU+CMR9                          Type 1C           WinAnsi          yes yes no      16  0
AWDFGB+CMMI9                         Type 1C           Custom           yes yes no      18  0
WEWHHV+MSBM10                        Type 1C           WinAnsi          yes yes no      20  0
MAHTDI+CMR10                         Type 1C           WinAnsi          yes yes no      22  0
ZBQUEC+CMSY7                         Type 1C           Custom           yes yes no      24  0
FSPAUA+CMR7                          Type 1C           WinAnsi          yes yes no      26  0
BHELSJ+CMMI10                        Type 1C           Custom           yes yes yes     28  0
KUJRKR+NimbusRomNo9L-ReguItal        Type 1C           Custom           yes yes no      30  0
MFGTCC+CMSY10                        Type 1C           Custom           yes yes yes     32  0
PPKBMD+CMMI7                         Type 1C           WinAnsi          yes yes no      34  0
TWVBFK+NimbusRomNo9L-Regu            Type 1C           Custom           yes yes no       8  0

所有字体名字的embsub都是yes

原文链接

下面是另一个,永久性更改系统设置,不用每次转换,觉得不太合适。方在这里供参考:

Getting pdflatex to embed all fonts

My friend Yuhong reminded me to make sure I embed all fonts in the pdf file for our ICDM-05 paper. This seems to be an IEEE requirement. Turns out to be a non trivial task, but not difficult. Here’s what I did (applies to a Linux TeTeX 3.0 distribution): As root, type “updmap –edit”, edit the config file so that it has the following content:

#pdftexDownloadBase14 false
pdftexDownloadBase14 true

Run pdflatex over your document.

Run pdffonts over the produced pdf file, all fonts should have true in the columns “emb” and “sub”.

  • 最后更改: 2019/05/28 15:17