View list of embedded fonts in PDF file with Preview

52

23

In Acrobat Reader I can go to File > Properties to see all the metadata for the open PDF file: the program that created the document, author information, embedded fonts, etc.

OS X's Preview can also display metadata, albeit a more limited subset (under Tools > Show Inspector). However, you can't see embedded font information with Preview.

Is there a way in OS X (preferably with Preview, and not with Acrobat) to see what fonts are embedded in a PDF file?

Andrew

Posted 2010-09-01T03:38:41.773

Reputation: 1 869

1

You may want to see this question: http://stackoverflow.com/questions/614619/how-to-find-out-which-fonts-are-referenced-and-which-are-embedded-in-a-pdf-docum (answer from michelem)

– Simon A. Eugster – 2012-06-01T07:36:51.800

Answers

69

Run either command from the terminal or command-line.

MacOS

strings /path/to/document.pdf | grep -i FontName

Note: MacOS might require you to install the command-line tools first.

Windows

findstr FontName C:\path\to\document.pdf

Redandwhite

Posted 2010-09-01T03:38:41.773

Reputation: 3 196

@JohnJ.Camilleri try strings /path/to/document.pdf | grep fontname – Baub – 2014-11-13T18:33:49.937

4@James that works but only sometimes; Specifically, it doesn't seem to work with PDFs created with pdflatex. – John J. Camilleri – 2014-11-14T06:44:37.123

Didn't work well for me either (on mac). On linux, pdffonts was so nice. – Stephen – 2014-11-18T17:02:10.693

One other argument I would add after grep would be "-i". So the command would be: strings /path/to/document.pdf | grep -i fontname. This argument ignores any specific casing and catches variants such as fontName FontName fontname FontName and so on. – Ariel – 2015-01-23T22:30:53.880

2strings doesn't work for me on OS X 10.10.5 (even with the ignore case flag) - however pdffonts (see other answer) is perfect. – William Turrell – 2015-09-03T08:26:52.727

I think if the PDF is compressed then the string could be mangled beyond recognition – YudhiWidyatama – 2017-02-05T09:46:18.850

1I want to confirm that it worked fine in macOS Sierra 10.12.6. I will suggest simplifying pdf name. I tried strings ABC.pdf | grep FontName – Vikram Singh Saini – 2017-09-19T07:08:06.583

4This doesn't work for me on OSX 10.8.4; nothing matches FontName in the output of strings... – John J. Camilleri – 2013-08-05T09:19:17.400

66

You can also use pdffonts, which can be installed with brew install poppler or brew install xpdf.

$ pdffonts file.pdf
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
GFEDCB+MyriadSet-Medium              CID TrueType      Identity-H       yes yes yes    304  0
GFEDCB+MyriadSet-Bold                CID TrueType      Identity-H       yes yes yes    310  0
GFEDCB+MyriadSet-MediumItalic        CID TrueType      Identity-H       yes yes yes    659  0
GFEDCB+Menlo-Regular                 CID TrueType      Identity-H       yes yes yes    664  0
ZapfDingbats                         Type 1            Custom           no  no  yes    665  0
ZapfDingbats                         Type 1            Custom           no  no  yes    666  0

Lri

Posted 2010-09-01T03:38:41.773

Reputation: 34 501

3Thanks. You only need the popper bottle. – NVaughan – 2016-07-05T21:46:44.417

1Also via macports "sudo port install poppler". – Neal Young – 2018-09-24T15:56:33.330

How does one make sense of font names such as "XSVTJR+CMSS12"? – David J. – 2019-01-21T23:03:03.627

@DavidJ.: That looks like a subset font. CMSS12 is likely the true PostScript name of the original font, while XSVTJR+ is added to the beginning of the name to assure this particular subset of CMSS12 has a name that's unique to all other possible subsets. You can see this same behavior is reflected in Lri's output above (the GFEDCB+ prefix is used for several embedded subset fonts). – NSGod – 2019-10-12T20:16:58.973