Extract the fonts embedded in a PDF

A PDF usually carries the font programs it needs inside it. This pulls them back out: every face the pages genuinely set text in, what kind of font each one is, how many pages use it, and the file itself where the document embedded one.

List every typeface a PDF actually sets text in and download the embedded font files as .ttf, .otf or .woff. Runs in your browser; the document is never uploaded.

Open the editor

Free, no account, and the file stays on your machine.

What you get

Open a PDF, go to Decompose, and choose Fonts and metadata. Each face is listed with its real name, its PDF font type and subtype, the pages it appears on, and whether the file is embedded or merely named. The list is ordered by how much text each face actually sets, so the body face of the document is at the top rather than a heading used once.

Anything embedded can be downloaded. The extension is chosen by reading the file's own sfnt signature rather than trusting a label, so a TrueType outline arrives as .ttf and an OpenType/CFF one as .otf — which matters the moment you open it in a font editor.

Two things worth knowing before you rely on the file

pdf.js rebuilds what it finds. A Type 1 or bare CFF font comes back wrapped as OpenType, because that is the form a browser can load. The outlines are the same; the bytes are not the ones in the PDF. For identifying a typeface, or reusing outlines, this is fine. As forensic evidence of the original file, it is not.

Fonts the document only names have no file to extract. The base-14 faces — Helvetica, Times, Courier and friends — are assumed present in every reader and are never embedded, and an author can leave any other face unembedded too. Those are listed and marked as missing rather than quietly skipped.

Embedded fonts are also frequently subset: the document carries only the glyphs it used. A subset tag like ABCDEF+ is stripped from the displayed name, but the file still holds only those glyphs. It will render the document's own text correctly and may be missing most of the alphabet.

Licensing

Extracting a font is a technical operation, not a licence. Most commercial typefaces permit embedding in a document while forbidding extraction and reuse as an installed font, and a subsetted embedded copy is not a licensed copy of the retail family. Identify what a document uses here, then buy the face if you intend to set new text in it.

Questions

Which formats can come out?

.ttf, .otf, .woff, .woff2, .ttc and occasionally .pfb. The extension is picked from the first four bytes of the file rather than from a mimetype, because pdf.js labels nearly everything it rebuilds as OpenType.

Why is a font listed but not downloadable?

Because the PDF does not contain it. It names the face and leaves the reader to supply it, which is standard for the base-14 fonts and common for others. There is no file in the document to hand you.

Can I find out what typeface a PDF uses without extracting anything?

Yes — the list itself answers that. Names are shown with subset tags removed, so ABCDEF+Helvetica-Bold reads as Helvetica-Bold.

Is the document uploaded to identify the fonts?

No. The whole scan runs in the tab, in a worker. Nothing is sent anywhere.

Related