What the PDF Font Inspector does
This inspector lists every font a PDF uses and tells you, for each one, whether it is embedded in the file or only named, whether it is a subset, what kind of font it is (Type 1, TrueType, CID-keyed or Type 3), how its characters are encoded, whether it carries a ToUnicode map, and on which pages it appears.
Those are the facts that decide whether a PDF prints and displays the same on every machine, whether a print shop or a PDF/A validator will accept it, and whether its text can be copied, searched and read aloud correctly. The file is parsed in your browser by this page's own PDF reader and is never uploaded.
How to use it
- Drop a PDF on the page, or load one of the two examples.
- Read the findings first: fonts that are not embedded, Type 3 fonts and fonts without a ToUnicode map are the ones that cause trouble.
- Use the font table to see each font's type, embedding, encoding and the pages it is on. Open "Fonts by page" to see which fonts a single page needs.
- Download the list as CSV for a print or prepress check, or as JSON for a record.
Reading the results
Embedded (full) means the whole font program is inside the PDF. Embedded subset means only the glyphs the document uses are inside; the name then starts with six capital letters and a plus sign, such as ABCDEF+Georgia. Subsets are normal and fine for viewing and printing, but they make later text editing hard because unused letters are missing.
Not embedded means the PDF only names the font. The viewer uses a local copy if it has one and substitutes another font if it does not, so line breaks, widths and even characters can change. The 14 standard PDF fonts (Times, Helvetica, Courier, Symbol and ZapfDingbats) are always substituted acceptably, which is why they are reported as a note rather than a problem - but PDF/A and many print services still require every font to be embedded.
ToUnicode is a table that maps the font's internal codes back to Unicode characters. CID fonts, Type 3 fonts and symbolic fonts with custom encodings need it; without it, copying the text or using a screen reader can give nonsense even though the page looks right.
Text ops counts the text-showing operations on each page that use the font. It shows which fonts carry real text and which are listed in resources but barely used.
Worked example: two sample files: a report and a form
The annual report example was printed from a web page. It uses three fonts - Arial-BoldMT for headings and Georgia and Georgia-Bold for body text - each an embedded subset of a CID TrueType font (CIDFontType2) with a ToUnicode map. Arial-BoldMT and Georgia appear on pages 1 and 2, and Georgia-Bold only on page 1. There are no findings: the file will look the same everywhere, and its text can be copied.
The membership form example uses one font, Helvetica, as a Type 1 font with WinAnsiEncoding and no font program in the file. The inspector reports it as not embedded but standard, so it is a note, not a problem: every viewer draws Helvetica with a built-in substitute. If the form had named a non-standard font such as a corporate typeface without embedding it, the same row would be marked as a problem.
Limitations: what the result does not prove
- Fonts are found through each page's resource dictionaries and the form XObjects the page draws. Fonts used only inside annotation appearances (for example filled form fields) or in patterns are not always listed.
- The tool reads font dictionaries; it does not open the font programs, so it cannot tell you whether an embedded font's licence allows embedding, or check glyph shapes for corruption.
- A ToUnicode map being present does not prove that it is correct. Some generators write wrong maps; test by copying a sentence from the PDF.
- Encrypted PDFs can still be listed, because font dictionaries are not encrypted, but damaged files may be only partly read - the parser repairs what it can and says so.
Privacy: where your data goes
Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics. Session recording and tag-manager scripts are switched off on this page.
Standards and sources
- ISO 32000-2 (PDF 2.0) - PDF Association resources - checked 19 Sep 2026
- ISO 32000-2:2020 Document management - Portable document format (PDF 2.0), section 9 Text
- Adobe - PDF Reference, sixth edition (PDF 1.7), chapter 5 Text
- PDF Association - PDF/A and embedded fonts (PDF/A in a nutshell)
Frequently asked questions
How can I tell whether the fonts in a PDF are embedded?
Drop the PDF here and every font is listed with its embedding status: embedded in full, embedded as a subset, or not embedded. A font is embedded when its font descriptor points at a font program (FontFile, FontFile2 or FontFile3) inside the PDF, which is what this tool checks.
What do the six letters and plus sign before a font name mean?
A prefix such as ABCDEF+ marks a subset: only the characters used in the document were embedded. The PDF specification requires the tag so that two different subsets of the same font are not confused. Subsets are fine for viewing and printing.
Is it a problem if Helvetica or Times is not embedded?
For ordinary viewing, no: they are among the 14 standard fonts every PDF viewer can substitute. For PDF/A archiving and for many commercial printers it is, because they require every font to be embedded so the output is exactly predictable.
Why does text copied from my PDF come out as strange characters?
Usually because a font has no ToUnicode map, or a wrong one, so the viewer cannot turn glyph codes back into letters. The inspector flags fonts that need a map and lack one. Re-exporting from the source application normally fixes it.
What is a Type 3 font and why is it flagged?
A Type 3 font defines each glyph with ordinary PDF drawing operators instead of a real font program. They often contain bitmaps from old TeX setups or scanning software, print blurry at high resolution and extract text poorly, so they are worth replacing.
Why are there more fonts listed than I used in my document?
Applications create separate font entries for bold, italic and each subset, and CID fonts for non-Latin scripts or symbols. Charts, pasted objects and headers can also bring their own fonts. The pages column shows where each one is used.
Last reviewed by the A2Z.Tools team against the sources listed above.