A font file holds hundreds or thousands of characters; a letter or an invoice uses a few dozen. So PDF producers often copy only the characters the document needs into the file. That partial copy is an embedded subset. The text looks as designed and the file stays small; the price shows up later: a character the document never used is not there to type.

How do you recognize a subset font?

By its name. The PDF standard gives every subset a prefix: “The tag shall consist of exactly six uppercase letters; the choice of letters is arbitrary, but different subsets in the same PDF file shall have different tags.” The part after the plus sign is the real font name.

In Acrobat or Reader, File > Document Properties > Fonts marks such a font “Embedded Subset”, where a whole font is marked “Embedded”. pdffonts (from Poppler, brew install poppler) says yes in its sub column. This is the demo cover letter made for PDF Textfix’s screenshots:

name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
AAAAAB+IBMPlexSerif-SemiBold         TrueType          MacRoman         yes yes no       8  0
AAAAAC+IBMPlexSerif-Regular          TrueType          MacRoman         yes yes no       9  0

One subset per weight of IBM Plex Serif: SemiBold for the name at the top and the subject line, Regular for the rest. Each holds only the characters its own lines print. PDF Textfix’s editor bar says it too: “Font: IBMPlexSerif-SemiBold (embedded subset), 20 pt”.

Why do PDF producers subset fonts?

To keep files small: a subset carries only the outlines the pages draw. Adobe lists the two choices a producer has as embedding the entire font, or “Embedding a subset containing only the characters used in the file”.

What does a subset mean for an edit?

Any character already in the subset can be typed in the document’s own font. Any other cannot, because its outline is not in the file. The demo cover letter was written without “é”, so correcting the writer’s own name from “Renee Okafor” to “Renée Okafor” reaches a character neither subset holds.

Part of the demo cover letter in PDF Textfix, with its heading, the writer's name Renée Okafor, open in the editor in IBM Plex Serif SemiBold. The letter é is orange: the embedded subsets lack it, so a fallback font draws it.
The subsets of the demo cover letter lack "é", so a fallback font draws it, marked in orange.

PDF Textfix handles that character with a fallback font, in a fixed order: another copy of the same font in the file, then the same font installed on your Mac, then the closest standard font. While you edit, the character is marked in orange, or underlined when it comes from another copy of the line’s own font, and the editor bar names the font. PDF Textfix never changes the subset itself: the new character goes into a font added to the file for the text you inserted.

What can you do about a subset?

  • Nothing to download. “AAAAAC+IBMPlexSerif-Regular” is not a font you can find or install. The tag belongs to one file; the typeface is the name after the plus sign.
  • Install the typeface, if you have a licence for it. When the installed copy matches the one in the file (the same widths, a TrueType file that allows embedding), PDF Textfix takes the missing character from it, so it keeps the line’s design; otherwise the next step of the order applies.
  • Check before you save. The how-to on keeping the same font walks through it, and PDF Textfix is free to try from the download page.

Questions about subset fonts

Can I remove or un-subset an embedded subset font?

You cannot turn a subset back into the whole font: the characters it leaves out are not in the file. To get full embedding, export the document again from its source with subsetting off; in InDesign, Adobe’s help says to “Enter 0 to embed all fonts, though this increases file size.”

Is an embedded subset a problem for printing?

No. A subset holds every character the pages draw, so the file prints as designed. The fonts that print shops and upload portals flag are the ones not embedded at all, which font not embedded in PDF covers. A subset limits only an edit that needs a character the document never used.