PDF 字体嵌入

注:本文为 "PDF 字体嵌入" 相关合辑。

图片清晰度受引文原图所限。

略作重排,未整理去重。

如有内容异常,请看原文。


解决 PDF 内嵌字体问题

于 2022-03-09 17:36:22 修改

外文会议、期刊投稿一般要求 PDF 中的字体应当是嵌入状态,避免其他电脑缺失字体导致 PDF 文字无法正常显示。

1. 检查字体是否嵌入

可以使用 Adobe Reader 或 Acrobat 等 PDF 阅读器打开文件,查看 属性 -> 字体,确认是否所有字体均已嵌入。

如果字体未嵌入,可以使用 Adobe Acrobat 的"印前检查 "功能进行 PDF 分析。该功能可在 工具 -> 印刷制作优化 PDF 中找到。

使用此方法的好处是可以发现 PDF 中哪些位置的字体未嵌入。双击错误信息可以定位问题位置(虚线蓝框处)。

在线工具检查(学术投稿专用)

IEEE 针对学术论文投稿提供专属 PDF 格式校验工具,支持字体嵌入状态、格式合规性等多维度检测:

访问链接:IEEE PDF Checker

2. PDF 嵌入字体

网上大部分方法是使用 Adobe Acrobat 的 Adobe PDF 虚拟打印机,将原文档打印一遍并在这个过程中设置字体嵌入。但这种方法会改变原文档的一些特性,如交叉引用、跳转显示等,且打印输出的纸张大小会调整为 A4 或其他标准纸张,无法保持原 PDF 大小。

使用 Adobe Acrobat 的"印前检查 "功能进行 PDF 修正。该功能可在 工具 -> 印刷制作优化 PDF 中找到。

修正后的 PDF 将嵌入全部字体。

值得一提的是,很难找到不使用 Adobe 编辑器嵌入 PDF 字体的方法。

说明

LaTeX 排版论文的字体嵌入注意事项

  1. 图片格式选择:插入的图片优先使用 EPS 矢量图格式,此类格式可保证缩放后清晰度,且需提前确认图片本身已嵌入字体;
  2. 编译方式选择:英文论文推荐使用 pdfLaTeX 编译,该方式会自动嵌入所有文字字体,采用 TeX 默认字体,兼容性更强。

提交论文时出现 PDF 没有嵌入某些字体的情况

York Sun 发布于 2021-05-07 20:25

在论文提交过程中,尤其是临近截止日期时,许多硕士及博士研究生会遇到论文无法成功提交的问题,提示"字体未包含"。通常,正文部分由 LaTeX 生成,一般不会出现字体问题,问题往往出在文中插入的图片上。

问题原因

为了获得高质量的图片,我们常常将 Visio 绘图以及 MATLAB 生成的图像另存为 PDF 格式。在这个过程中,由于操作不当或不熟悉软件,可能会使用某些特定字体(例如 Times New Roman),从而导致最终的字体嵌入问题。

解决方法

检查字体嵌入情况

实际上,无需等到提交论文时才发现字体嵌入问题。可以提前使用 Acrobat Pro 检查文档的字体嵌入情况。打开图片 PDF 文件,进入 文件 -> 属性

在新打开的对话框中查看字体,如下图所示:

上图展示了一个未嵌入字体的情况。如果字体已嵌入,则显示如下:

字体嵌入操作步骤

如果发现字体未嵌入,可以按照以下步骤解决:进入 编辑 -> 首选项

点击"首选项",进入如下菜单:

选择 "转换为 PDF" -> "PostScript/EPS" ,然后点击 "编辑设置"

点击"编辑",进入如下菜单:

在左侧选择"字体",在右侧选择 "嵌入所有字体" ,其他选项均不勾选,然后点击 "另存为"

取一个名字,点击"保存"。至此,设置过程完成。

转换 PDF 文件

接下来,开始转换 PDF:进入 文件 -> 打印

点击"打印",进入如下界面:

理论上,此时已经可以完成字体嵌入。但有时打印输出的文件可能会出现色彩失真,例如黑色透着灰色。可以通过以下操作解决:点击 "高级" -> "高级打印设置" -> "颜色处理" ,选择 "与源一致"

这样,打印出来的图片颜色会更加正常。

comment

流浪家

另一种方法是使用 Acrobat(付费软件)打开 PDF 文件,然后另存为 PDF/A 格式即可。

2023-05-01


解决 PDF 内嵌字体问题

December 发布于 2023-03-21 20:25・湖北

如果发表的论文中使用了非常用字体,其他人在电脑上打开时可能会出现乱码,此时需要嵌入 PDF 字体。

命令行检查(Linux/macOS 环境)

pdffonts 命令行工具最初来自于 Xpdf,现在是 poppler-utils 包的一部分,在大多数 Linux 发行版中都是可用的。

若需兼容中文,可使用 xeLaTeX 编译,但需通过 pdffonts 命令验证字体嵌入状态,避免未嵌入导致的显示异常。

通过 pdffonts 命令可在终端快速获取字体嵌入详情,适用于批量检查高效操作。

具体如下:

  1. 打开终端,输入命令格式:pdffonts 文档路径/文件名.pdf
  2. 输出结果中关键列含义:
    • emb:字体嵌入状态(yes 为已嵌入,no 为未嵌入);
    • sub:是否子集化嵌入(仅嵌入文档中实际使用的字符);
    • uni:是否支持 Unicode 编码;

例如,以下 PDF 文档中许多字体未嵌入,导致在其他电脑上无法显示。

text 复制代码
# dingbo @ AEP in ~/Desktop/ICCD2022-camera-ready on git:master x [16:31:52]
$ pdffonts ./conference_101719.pdf
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
XFEVKF+NimbusRomNo9L-Regu            Type 1            Custom           yes yes no       5  0
MFUTSE+NimbusRomNo9L-ReguItal        Type 1            Custom           yes yes no       6  0
GSKNIF+CMSY10                        Type 1            Builtin          yes yes no       7  0
PUVVNX+NimbusRomNo9L-MediItal        Type 1            Custom           yes yes no       8  0
YFMEUT+NimbusRomNo9L-Medi            Type 1            Custom           yes yes no       9  0
GLOFDO+TimesNewRomanPS-BoldMT        TrueType          WinAnsi          yes yes no      18  0
GLOFEA+TimesNewRomanPS-BoldItalicMT  TrueType          WinAnsi          yes yes no      19  0
GLOFGB+TimesNewRomanPSMT             CID TrueType      Identity-H       yes yes yes     20  0
GLOFIC+Calibri                       TrueType          WinAnsi          yes yes no      21  0
LPDOLN+TimesNewRomanPSMT             TrueType          WinAnsi          yes yes no      69  0
LPDOLP+TimesNewRomanPS-BoldItalicMT  TrueType          WinAnsi          yes yes no      70  0
LPDPAA+TimesNewRomanPS-BoldMT        TrueType          WinAnsi          yes yes no      71  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     137  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     138  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     139  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     140  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     151  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     152  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     153  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     162  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     163  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     164  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     198  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     199  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     200  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     233  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     238  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     239  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     240  0
TimesNewRomanPSMT                    TrueType          WinAnsi          no  no  no     241  0

解决方法

  1. 打开 PDF 文件,点击 文件 -> 打印 ,选择 Adobe PDF -> 属性 -> 默认设置(标准) -> 编辑 -> 字体
  2. 将"字体来源"中的所有字体添加到"总是嵌入"框中。
  3. 点击另存为一个配置文件(名称自拟,按默认路径保存),保存后退出。
  4. 再次打印,选择之前保存的配置文件,点击打印即可生成嵌入所有字体的 PDF 文件。

效果检查

text 复制代码
# dingbo @ AEP in ~/Desktop/ICCD2022-camera-ready on git:master x [16:31:39]
$ pdffonts ./conference_embedded.pdf
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
KKKDPJ+NimbusRomNo9L-Regu            Type 1C           Custom           yes yes yes 223 0
KKKDPK+NimbusRomNo9L-ReguItal        Type 1C           Custom           yes yes yes 226 0
KKKDPL+CMSY10                        Type 1C           Custom           yes yes yes 229 0
KKKDPM+NimbusRomNo9L-MediItal        Type 1C           Custom           yes yes yes 232 0
KKKDPN+NimbusRomNo9L-Medi            Type 1C           Custom           yes yes yes 235 0
KKKEOE+TimesNewRomanPS-BoldItalicMT  TrueType          WinAnsi          yes yes no     179 0
KKKFHB+TimesNewRomanPS-BoldMT        TrueType          WinAnsi          yes yes no     180 0
KKKEHC+TimesNewRomanPS-BoldMT        TrueType          WinAnsi          yes yes no     182 0
KKKEHD+TimesNewRomanPS-BoldItalicMT  TrueType          WinAnsi          yes yes no     181 0
KKKEFO+TimesNewRomanPSMT             CID TrueType      Identity-H       yes yes no     183 0
KKKENC+Calibri                       TrueType          WinAnsi          yes yes no     184 0
KKKEOD+TimesNewRomanPSMT             TrueType          WinAnsi          yes yes no     185 0
KKKGDP+TimesNewRomanPSMT             TrueType          WinAnsi          yes yes no     188 0

comment

Tinsley

  1. 打开电脑设置 -> 设备 -> 打印机和扫描仪
  2. 找到 Adobe PDF ,点击 管理 -> 打印首选项
  3. 去掉"仅依靠系统字体;不使用文档字体"前面的勾选,点击 应用

    2023-11-23 · 湖北

via: