如何找出PDF文档中引用了哪些字体以及嵌入了哪些字体

如何找出PDF文档中引用了哪些字体以及嵌入了哪些字体,pdf,fonts,Pdf,Fonts,我们对PDF文档中的字体有点问题。为了指出我想检查的问题,哪些字体实际上嵌入在pdf文档中,哪些仅被引用。有没有一种简单(和免费的一样便宜)的方法呢?使用免费的iText(如果您在.NET上,也可以使用iTextSharp),您可以编写一个实用程序,使用BaseFont.GetDocumentFonts方法为您提取此信息 阅读源于的命令行工具,现在是的一部分 此工具在大多数Linux发行版中作为poppler-utils包的一部分提供 使用和输出示例: $ pdffonts some.pdf

我们对PDF文档中的字体有点问题。为了指出我想检查的问题,哪些字体实际上嵌入在pdf文档中,哪些仅被引用。有没有一种简单(和免费的一样便宜)的方法呢?

使用免费的iText(如果您在.NET上,也可以使用iTextSharp),您可以编写一个实用程序,使用BaseFont.GetDocumentFonts方法为您提取此信息


阅读源于的命令行工具,现在是的一部分

此工具在大多数Linux发行版中作为
poppler-utils
包的一部分提供

使用和输出示例:

$ pdffonts some.pdf 

name                                 type              emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
BAAAAA+Arial-Black                   TrueType          yes yes yes     53  0
CAAAAA+Tahoma                        TrueType          yes yes yes     28  0
DAAAAA+Wingdings-Regular             TrueType          yes yes yes     43  0
EAAAAA+Webdings                      TrueType          yes yes yes     38  0
FAAAAA+Arial-BoldMT                  TrueType          yes yes yes     33  0
GAAAAA+Tahoma-Bold                   TrueType          yes yes yes     23  0
HAAAAA+OpenSymbol                    TrueType          yes yes yes     48  0

我终于得到了一个示例文件,它实际上似乎嵌入了字体

使用普通的Adobe Reader(如果愿意,也可以使用Foxit)。在生成的对话框中选择文件->属性,然后选择字体选项卡。您将看到字体列表。嵌入的字体将在字体名称后面的()中说明这一事实。

有一个字体报告器,可作为命令行实用程序或通过库调用使用。如果运行“listfont.pl file.pdf”,则会得到如下输出:

Page 1:
  Name: F1.0
    Type: TrueType
    BaseFont: NZUXSR+Impact
    Encoding: MacRomanEncoding
    Widths: yes
      Characters: 0-255
    Embedded: yes
  Name: F2.0
    Type: TrueType
    BaseFont: XSFKRA+ArialMT
    Encoding: MacRomanEncoding
    Widths: yes
      Characters: 0-255
    Embedded: yes

如果您只想找到字体名称,可以使用

从PDF中提取字体,这要简单得多:从终端运行此操作

strings yourPDFfilepath.pdf | grep FontName

Windows:findstr FontName YourPdfilePath.PdfDoe不适合我。(Mac和latex生成的PDF。)
pdffonts
显示两种嵌入式字体;这表明没有。显然,此方法有时有效,但不可靠。请尝试使用小写ffontName@texnic试试这个。右键单击并在文本编辑器(如记事本)中打开该文件,然后搜索FontName。为避免linkrot,请提供一个示例和/或一些文档。它似乎是默认安装在我的Lubuntu 14.10安装中的。对于mac用户,
brew install poppler
,以轻松获取设备文档查看器中的
pdffonts
命令,转到文件-->属性-->字体选项卡注意:在Windows上,Pdfonts可以作为Poppler Chocolate软件包无耻插件的一部分安装,但这是这里唯一返回证据的跨平台方法。另外,yeez,很酷的网站。