Checkpoint 31: Fonts
All fonts used in your PDF must be properly embedded with complete glyph definitions, character mappings, and Unicode support. This ensures that text displays correctly and can be read by assistive technologies.
What This Means
Fonts in PDFs are complex. Unlike web pages that can fall back to system fonts, PDFs must embed the font information needed to display text. For accessibility, fonts must also include:
- Glyph definitions: The actual shapes of each character
- Unicode mappings (ToUnicode CMap): Translations from internal codes to standard Unicode
- Width information: How much space each character occupies
- Encoding tables: How character codes relate to glyph shapes
When any of these elements are missing or incorrect:
- Text may display as blank boxes or incorrect characters
- Screen readers cannot extract or pronounce text
- Copy and paste produces garbled results
- Search functionality fails
Why It Matters
Font issues are technical but have significant accessibility impact:
- Screen reader users rely on accurate text extraction. Broken fonts mean broken accessibility
- Braille display users cannot convert garbled text to braille
- Document reflow on different devices fails with incomplete font data
- Text-to-speech produces incorrect pronunciation or silence
- Search and indexing fail, making content unfindable
Font problems often go unnoticed because the PDF looks correct visually. The disconnect between visual appearance and underlying text data is a hidden accessibility barrier.
Common Violations
The Matterhorn Protocol defines 30 failure conditions for fonts. This documentation covers the most common issues grouped by category.
Font Embedding Issues
31-001 to 31-005: Font Program and Embedding Problems
What's Wrong: Fonts are not properly embedded in the PDF. This can mean:
- Font is referenced but not embedded (31-001)
- Font program is incomplete or corrupted (31-002)
- Required font tables are missing (31-003)
- CID fonts missing required components (31-004, 31-005)
Symptoms:
- Characters display as boxes or wrong symbols
- Text appears in a fallback font that looks different
- Some characters work while others do not
How to Identify:
- Open File > Properties > Fonts in Acrobat
- Fonts should show "Embedded" or "Embedded Subset"
- Fonts showing "Not Embedded" or errors are problems
- PDF/UA validators report font embedding issues
How to Fix:
- If you have the source document, re-export to PDF with font embedding enabled
- In Acrobat, try Tools > Print Production > Preflight with "Embed fonts" fixup
- If fonts cannot be embedded, consider converting text to outlines (loses text extraction)
Unicode Mapping Issues
31-006 to 31-012: ToUnicode CMap Problems
What's Wrong: The ToUnicode CMap that translates font codes to Unicode is missing, incomplete, or incorrect. This is the most common font-related accessibility issue.
Symptoms:
- Copy and paste produces wrong characters or gibberish
- Screen readers announce incorrect letters
- Search cannot find words that are visible
- PDF/UA validators report "Unicode mapping" errors
How to Identify:
- Try copying text from the PDF and pasting into Notepad
- If the pasted text does not match what you see, Unicode mapping is broken
- Run PAC or Acrobat accessibility check for specific errors
How to Fix:
Option 1: Re-export from source
- Open the original document (Word, InDesign, etc.)
- Use modern PDF export settings
- Ensure fonts are properly installed on your system
- Export with "Include fonts" or similar option
Option 2: Use Preflight fixups
- Go to Tools > Print Production > Preflight
- Search for fixups related to fonts or Unicode
- Apply appropriate fixups
Option 3: Replace problematic fonts
- Use Tools > Edit PDF
- Select text with the problematic font
- Change to a standard font with good Unicode support
- Note: This changes the document appearance
Character Width and Metrics Issues
31-013 to 31-018: Width and Metrics Problems
What's Wrong: Character width information is incorrect or missing. This affects:
- Text spacing and layout
- Selection highlighting
- Cursor positioning in forms
- Text extraction accuracy
Symptoms:
- Text appears cramped or too spread out
- Selecting text highlights wrong areas
- Copied text has incorrect spacing
- Form fields do not align with labels
How to Fix:
- Re-export from the source with correct font embedding
- Use fonts with complete metrics tables
- Avoid heavily modified or corrupted fonts
Encoding Issues
31-019 to 31-024: Encoding Table Problems
What's Wrong: The font's encoding (how it maps character codes to glyphs) is incorrect or uses deprecated formats.
Common problems:
- Non-standard encodings without proper mapping
- MacRoman vs. WinAnsi encoding conflicts
- Symbol encodings without Unicode mapping
- CID encoding issues
How to Fix:
- Use fonts with standard encoding (preferably Unicode/OpenType)
- Avoid legacy fonts from older systems
- Re-export from source using modern fonts
CIDFont-Specific Issues
31-025 to 31-030: CID and Composite Font Problems
What's Wrong: CID fonts (used primarily for Asian languages) have structural issues:
- Missing CIDSystemInfo
- Incorrect CIDToGIDMap
- Registry or ordering problems
- Supplement issues
These affect documents with:
- Chinese, Japanese, Korean text
- Complex scripts like Arabic, Hindi
- Mathematical or technical symbols
How to Fix:
- Use properly designed CID fonts
- Export from applications with good CJK support
- Ensure language settings are correct during PDF creation
How to Fix in Adobe Acrobat
Checking Font Status
- Open File > Properties
- Click the Fonts tab
- Review all fonts:
- Look for "Embedded" or "Embedded Subset"
- Note any fonts marked "Not Embedded"
- Check for unusual font names
Embedding Missing Fonts
Using Preflight:
- Go to Tools > Print Production > Preflight
- In the search box, type "embed"
- Select "Embed missing fonts"
- Click Fix
- Save the corrected PDF
Note: This only works if the font is installed on your system.
Converting to Outlines (Last Resort)
If fonts cannot be embedded:
- Go to Tools > Print Production > Preflight
- Find "Convert fonts to outlines" fixup
- Run the fixup
Warning: Converting to outlines:
- Makes text completely inaccessible (cannot be extracted)
- Should only be used when accessibility is not required
- Destroys searchability and screen reader access
Testing with Copy/Paste
- Select text in the PDF (Ctrl+A for all)
- Copy (Ctrl+C)
- Open Notepad or a plain text editor
- Paste (Ctrl+V)
- Compare pasted text to original
If text is garbled, Unicode mapping is broken.
Using the Accessibility Checker
- Go to Tools > Accessibility > Accessibility Check
- Run the full check
- Look for issues under:
- "Fonts" section
- "Document text" entries
- "Character encoding" issues
How to Fix in Microsoft Word
Prevention is the best approach for font issues.
Using Safe Fonts
Prefer fonts with excellent PDF compatibility:
| Font | Type | Notes |
|---|---|---|
| Arial | Sans-serif | Universal support |
| Calibri | Sans-serif | Modern, good Unicode |
| Times New Roman | Serif | Classic, well-supported |
| Georgia | Serif | Screen-optimized |
| Verdana | Sans-serif | High legibility |
| Cambria | Serif | Good for documents |
Embedding Fonts in PDF Export
- Go to File > Save As and choose PDF
- Click Options
- Look for font embedding settings (may be under PDF options)
- Ensure fonts will be embedded
Avoiding Font Problems
- Install fonts properly: Use system font installation, not just copying files
- Avoid converted fonts: Fonts converted between formats may lose data
- Test early: Export a sample PDF and test copy/paste before finalizing
- Use Unicode characters: Type special characters using Unicode input rather than symbol fonts
For Special Characters
Instead of symbol fonts:
- Go to Insert > Symbol
- Choose "Unicode (hex)" encoding
- Select the character
- This ensures proper Unicode mapping in the PDF
How to Fix in Adobe InDesign
InDesign offers excellent font control:
Font Embedding Settings
- Go to File > Export (PDF)
- In the export dialog, click Advanced
- Set Subset Fonts Below to a low percentage (e.g., 0%)
- This embeds more complete font data
Package Fonts
- Go to File > Package
- This collects all fonts used
- Verify all fonts are legal to embed
Preflight for Fonts
- Go to Window > Output > Preflight
- Create or use a profile that checks for:
- Missing fonts
- Type 1 fonts (may have issues)
- Incomplete font sets
Testing Your Fix
Automated Testing
Adobe Acrobat:
- Go to Tools > Accessibility > Accessibility Check
- Run full check
- Review any font-related failures
PAC (PDF Accessibility Checker):
- Open the PDF in PAC
- Run the PDF/UA check
- Review Checkpoint 31 results
- Check the detailed "Fonts" report section
Copy/Paste Test
- Open the PDF
- Press Ctrl+A to select all text
- Ctrl+C to copy
- Open Notepad
- Ctrl+V to paste
- Compare:
- Is all text present?
- Are characters correct?
- Is spacing reasonable?
Screen Reader Test
- Open the PDF with a screen reader
- Listen to the entire document
- Check for:
- Correct pronunciation
- No skipped content
- No garbled speech
Font Properties Check
- Open File > Properties > Fonts
- Verify all fonts show:
- "Embedded" or "Embedded Subset"
- Recognizable font names (not gibberish)
- Encoding information
Validation Checklist
- All fonts are embedded (not "Not Embedded")
- Copy/paste produces correct text
- Screen reader pronounces content correctly
- Search finds all visible text
- PDF/UA validation passes for fonts
- No Type 3 fonts are used for text content
- Symbol fonts have Unicode mappings or are replaced
Special Considerations
Mathematical and Scientific Content
Math fonts often have issues:
- Use MathML or structured math when possible
- Consider MathType, which has accessibility options
- LaTeX to PDF workflows need careful font configuration
- Provide alt text for equations as a backup
Asian Languages (CJK)
Chinese, Japanese, and Korean text requires:
- Proper CID font embedding
- Correct language tagging (see Checkpoint 11)
- Unicode-based fonts
- Testing with native-language screen readers
Legacy Documents
Older PDFs often have font issues:
- Consider regenerating from source if available
- OCR may be able to recreate text layer
- Font substitution may be necessary
- Document the limitations if full accessibility is not possible
Additional Resources
Official Standards and Guidelines
- PDF Association Matterhorn Protocol 1.02
- ISO 14289-1: PDF/UA-1 Standard
- ISO 32000-1: PDF Reference (Font specifications)
Technical References
Tools
- PAC (PDF Accessibility Checker) - Free PDF/UA validation
- veraPDF - Open source PDF validator
- FontForge - Font inspection and editing
- PDFDebugger (from Apache PDFBox) - Low-level PDF analysis
This documentation is based on the Matterhorn Protocol 1.02, the definitive reference for PDF/UA validation. For the most current information, consult the PDF Association and W3C WCAG guidelines.