如何从PDF中提取嵌入字体作为有效字体文件?

时间:2010-08-15 15:37:18

标签: pdf fonts ghostscript true-type-fonts embedded-fonts

我知道pdftk.exe实用程序可以指示PDF使用哪些字体,以及它们是否嵌入。

现在的问题是:鉴于我有带嵌入字体的PDF文件 - 如何以可重复使用的常规字体文件的形式提取这些字体?是否有(最好是免费的)工具可以做到这一点?另外:这可以通过编程方式完成,例如iText吗?

8 个答案:

答案 0 :(得分:370)

答案 1 :(得分:22)

使用在线服务http://www.extractpdf.com。无需安装任何东西。

答案 2 :(得分:5)

最终找到the FontForge Windows installer package并通过已安装的程序打开PDF。工作得很开心,很开心。

答案 3 :(得分:4)

http://www.verypdf.com/app/pdf-font-extractor/pdf-font-extracting-tool.html IMO最简单的提取字体的方法(Windows)。

答案 4 :(得分:2)

来自PDF2SVG

PDFTron 6.0版做得很合理。它默认生成OpenType(.otf)字体。使用--preserve_fontnames保留“从源文件中获取的字体/字体系列命名方案。”

PDF2SVG是商业产品,但您可以下载免费的演示可执行文件(其中包括SVG输出上的水印,但不限制使用)。可能还有其他PDFTron产品也提取字体,但我最近才发现PDF2SVG。

答案 5 :(得分:1)

目前可用于提取pdf字体的最佳在线工具之一是http://www.pdfconvertonline.com/extract-pdf-fonts-online.html

答案 6 :(得分:0)

这是@Kurt Pfeifle's answerfont-forge部分的后续操作,该部分特定于Red Hat(以及其他Linux发行版)。

  1. 打开PDF并选择所需的字体后,您将需要选择“文件->生成字体...”选项。
  2. 如果文件中有错误,则可以选择忽略它们或保存文件并进行编辑。如果您单击“修复”足够的次数,大多数错误可以自动修复。
  3. 单击“元素->字体信息...”,然后将“字体名称”,“家族名称”和“人类名称”全部设置为所需的值。如果不是,请修改它们并将文件保存在某处。这些名称将确定字体在系统上的显示方式。
  4. 选择文件名,然后单击“保存...”

拥有TTF文件后,您可以通过以下方式将其安装在系统上

  1. 将其复制到文件夹/usr/share/fonts(作为根用户)
  2. 运行fc-cache -f /usr/share/fonts/(作为根用户)

答案 7 :(得分:0)

即使这个问题已有10年历史了,它仍然是有效的,并且随着技术的发展,有效的答案也会随之改变。

在搜索当前答案时,没有人注意到WOFF(Web开放字体格式)(W3C)(Wikipedia),可用于重新创建单个字符(字形)并将其显示为一个网页。

使用IDR Solutions提供的免费在线网页,将PDF转换为HTML5(link),然后将PDF转换为zip文件。在生成的zip中将是woff文件类型的字体目录。如果您不知道,当前的Internet浏览器支持woff文件。 (reference)可以在在线网站FontDrop上进行检查! (link)。

从PDF到HTML5的zip文件还将包含可在Internet浏览器中打开的PDF每页的HTML文件,并且是我发现或看到的最好,最准确的PDF译文之一。

虽然我只是在学习如何使用WOFF文件,但这是值得传递的。享受。

PS,当我了解有关使用woff文件类型的更多信息时,我可能会提供更多信息,但是由于这是创用CC,如果您有宝贵的经验要传递,请随时编辑此答案。