如何从 PDF 文件中提取字体?

如何从 PDF 文件中提取字体?

有没有办法从 PDF 文件中提取字体?

我知道 PDF 文件中嵌入的字体通常只是字体的子集。无论如何,有办法做到这一点吗?

答案1

在这里,我根据 HackSlash 的建议,将我之前的评论提升为答案。

有一个相同的问题在 Stackoverflow 上已经有一个非常好的、被高度接受的回答

它说明了几种方法,我仅简要列出:

  1. pdftops
  2. 字体
  3. 多媒体PDF
  4. Aghostscript 脚本
  5. pdf-解析器.py

此外,我想指出的是,自由的 在线的 服务正是这样做的。

评论:我不会“选择最好的选择”,因为最好的通常是主观的,并且确实取决于具体情况。最简单的方法是使用在线服务,但如果材料要保密,那将不是一个可行的选择。FontForge 看起来确实不错,特别是对于那些可能已经使用它来创建或编辑字体的人来说。如果没有可用的桌面环境,那么 pdftops(和其他命令行选项)将是一个不错的选择,也有利于自动化。

答案2

我会使用 Font Forge,因为它是一个免费、开源、跨平台的解决方案,可以从 PDF 文件中提取字体数据。

https://fontforge.github.io/en-US/

使用文件 > 打开菜单项。

摘自文件:

FontForge 还可以从 pdf 文件中读取(许多)字体。FontForge 通常不列出 pdf 文件(因为它们实际上并非设计为传输字体的机制,并且大多数此类字体由于子集和其他优化而不完整),但您始终可以直接输入字体名称(或使用 [Filter] 按钮定义 pdf 文件的过滤器)。

https://fontforge.github.io/filemenu.html

答案3

请注意,根据源程序和作者的不同,他们可能选择“将字体转换为轮廓”,在这种情况下,实际的实时字体数据不会被嵌入。这在 Postscript 输出时代通常是必要的,尽管实际上没有必要,但这种做法至今仍在延续。

参见https://graphicdesign.stackexchange.com/questions/55780/is-it-necessary-to-outline-fonts-convert-text-to-curves-before-sending-them-to

相关内容