Fonts Changed After PDF Conversion: Causes and Fixes
You spend hours perfecting a document. The fonts are exactly right — a sleek sans-serif for headings, a carefully chosen body typeface, maybe a custom brand font for your company logo. You convert it to PDF, open the result, and the fonts are completely wrong. Arial has become Times New Roman. Your custom heading font has reverted to a generic system default. Special characters show as boxes or question marks. This is font substitution, and it's one of the most common — and most confusing — problems in PDF conversion workflows. It happens when converting from Word to PDF, from HTML to PDF, from InDesign or Illustrator to PDF, and even when editing an existing PDF and re-saving it. The root cause is almost always the same: the conversion tool doesn't have access to the original font files, so it falls back to whatever fonts are available on the system where the conversion is happening. If you're converting on a server, that system might have a very minimal set of fonts installed — just the basic metric-compatible substitutes for the common Windows core fonts. Understanding why this happens puts you in control of the fix. Once you know where in the pipeline the fonts get lost, you can address it at the source rather than fighting the symptoms. This guide explains each scenario in detail and gives you concrete steps to preserve your fonts correctly.
Why Fonts Change During PDF Conversion
PDF files handle fonts in one of two ways: embedding or referencing. An embedded font means the actual font data — the outlines of every character — is stored inside the PDF file. A referenced font means the PDF only stores the font name and expects the viewer's operating system to provide the matching font file. Embedded fonts always look identical regardless of which device opens the PDF. Referenced fonts look different on every device, depending on what's installed. When you convert a Word document to PDF on your own machine using Microsoft Word's built-in export, fonts are almost always embedded correctly because Word has access to the fonts you used. The problem begins when you send the document to a conversion service, or when someone else opens your Word file on a machine that doesn't have your fonts installed. HTML-to-PDF conversion is even more prone to font problems. Web fonts loaded via Google Fonts or self-hosted WOFF files are fetched over the network at render time. If the conversion tool renders the HTML in a sandboxed environment without internet access, Google Fonts URLs return nothing, and the browser falls back to the system's generic serif or sans-serif font — which is usually Times New Roman or Arial. Custom brand fonts are the highest-risk scenario. If your organization uses a licensed typeface that isn't installed on the server performing the conversion, the converter has no choice but to substitute it. The substitute is typically chosen based on font metrics — the converter looks for a font with similar character widths so line breaks don't shift too dramatically, but the visual result is completely different.
How to Preserve Fonts When Converting Word to PDF
The most reliable way to preserve fonts in Word-to-PDF conversion is to embed the fonts directly in the Word file before conversion. When fonts are embedded in the source document, any converter that reads the file can extract the font data and embed it in the resulting PDF, regardless of what's installed on the conversion system. Microsoft Word supports font embedding natively. You can enable it in the Save Options dialog, which ensures the font data travels with the document everywhere it goes. When you then export to PDF, Word's PDF exporter sees the embedded fonts and includes them in the output. For online conversion tools, the key test is whether the tool preserves embedded fonts from the source document. LazyPDF's Word to PDF conversion uses LibreOffice, which respects embedded font data in DOCX files and passes it through to the PDF output. If your Word file has fonts embedded and the conversion output still shows substitution, the problem is that the fonts were not actually embedded in the Word file — they were only referenced.
- 1Step 1 — Embed fonts in your Word file before converting: In Microsoft Word, go to File → Options → Save. Check 'Embed fonts in the file' and also check 'Do not embed common system fonts' to keep file size reasonable. Save the document, then convert to PDF.
- 2Step 2 — Use Word's native PDF export, not a PDF printer: Go to File → Export → Create PDF/XPS. This uses Word's built-in PDF generator which has direct access to all loaded fonts and embeds them correctly. Using 'Print to PDF' via a virtual printer driver often does not embed fonts reliably.
- 3Step 3 — Verify font embedding in the output PDF: Open the resulting PDF in Adobe Acrobat Reader, go to File → Properties → Fonts tab. Every font should show 'Embedded Subset' or 'Embedded' next to its name. If any font shows no embedding note, that font is referenced and may substitute on other systems.
- 4Step 4 — For persistent substitution, convert problem text to outlines: If a specific font cannot be embedded (licensing restrictions on some commercial fonts prohibit embedding), select all text using that font in your source application and convert it to vector outlines (curves) before exporting. Outlined text has no font dependency — it's stored as shapes and looks identical everywhere.
Fixing Font Problems in HTML-to-PDF Conversion
HTML-to-PDF conversion has a unique font challenge: web fonts loaded from external URLs. When you design a webpage using Google Fonts, the fonts are fetched at render time from Google's CDN. This works perfectly in a browser because browsers have unrestricted internet access. Conversion tools that render HTML in a headless browser environment may or may not have access to external URLs, depending on how the tool is configured. The most reliable solution for HTML-to-PDF font preservation is to serve fonts locally within your HTML rather than loading them from a CDN. Instead of a Google Fonts link tag, embed the font data as a base64 data URI directly in the CSS. This makes the font completely self-contained — no network requests required during conversion. Alternatively, if you have the font files, you can use @font-face rules that reference local font files alongside the HTML. When the HTML and font files are in the same directory structure during conversion, the tool can load them without any network access. For system fonts (Arial, Helvetica, Georgia, etc.), the problem is different: these fonts are typically available on conversion servers. The issue is usually that CSS is not being applied correctly — perhaps due to missing stylesheets, CORS errors on external CSS files, or the conversion tool using a different viewport size that triggers different responsive CSS rules. Always test your HTML-to-PDF conversion with inline CSS rather than external stylesheets to rule out stylesheet loading as the cause.
Diagnosing Font Substitution vs. Other Visual Differences
Not every visual difference after PDF conversion is a font substitution problem. Before assuming fonts have changed, rule out these other common causes that produce similar-looking symptoms. Line spacing differences can make the same font look like a different font because different spacing alters the texture of text blocks dramatically. This is usually caused by a line-height CSS property not translating correctly to the PDF page model, or by Word's paragraph spacing settings conflicting with the PDF generator's spacing calculations. Kerning and ligature differences are common when converting between applications that handle OpenType features differently. Your original design might use OpenType ligatures (combined character shapes like 'fi' and 'fl') that the PDF converter doesn't support. The individual characters are technically the same font, but the ligatures are missing, making the text look slightly different. Missing glyph issues — where characters appear as boxes, squares, or question marks — are a sign of a different problem: the font is present but the specific character (often a special symbol, diacritic, or Unicode character outside the font's supported range) is not included in the font subset. The fix is to either use a font with full glyph coverage or switch to Unicode-complete alternatives like Noto fonts for multilingual content. True font substitution — where an entirely different typeface is used — is most obvious in headings and large text where the letterforms are clearly different. Confirm substitution by checking the Fonts tab in Acrobat's document properties.
Frequently Asked Questions
Why do my fonts look fine on my computer but wrong when I send the PDF to someone else?
This almost certainly means your fonts are referenced rather than embedded in the PDF. When you view the PDF on your computer, your system's font files fill in the references correctly — you see the right fonts because you have them installed. When someone else opens the PDF on a different computer without those fonts installed, their viewer substitutes the closest available font. The fix is to re-export the PDF with font embedding enabled, which stores the actual font data inside the PDF file so it looks identical on every device.
Can I fix a PDF that already has the wrong fonts without going back to the source file?
This is difficult and usually impractical. Once a PDF has been converted with the wrong fonts, the original font information is gone — the PDF now contains text rendered in the substitute font. You can't reliably reverse-substitute back to the original. Your best option is to go back to the source document, ensure fonts are embedded, and re-export. If you no longer have the source, a professional PDF editing tool like Adobe Acrobat Pro can manually edit text and set specific fonts, but this requires painstaking per-page intervention.
Does compressing a PDF affect the embedded fonts?
Good compression tools preserve font embedding correctly. LazyPDF's compression uses Ghostscript with settings that retain font subset data. However, compression does subsetting — it strips out font characters that aren't used in the document, reducing file size while keeping all characters that actually appear in the PDF. This is safe and the fonts remain embedded. Poor compression tools may flatten fonts to bitmaps, which makes text look blurry and non-selectable — always verify text is still selectable after compression as a quick quality check.
My company uses a custom licensed font. Can I embed it in PDFs?
Most commercial font licenses permit embedding in PDFs for distribution purposes, since embedding is considered equivalent to 'print' rights in most font EULAs. However, some fonts have restrictions — the license may say 'no embedding' or 'no web embedding'. Check your font license. If embedding is prohibited, you have two options: convert the text to outlines (vector paths with no font dependency) before exporting, or use a substitute font that has permissive embedding rights for that specific content.
Why does converting HTML to PDF lose my Google Fonts?
HTML-to-PDF converters typically render HTML in a headless browser environment. If that environment doesn't have access to the internet (common in secure or sandboxed server setups), Google Fonts URLs fail to load silently and the browser falls back to system defaults. The fix is to self-host your font files alongside the HTML, or embed font data as base64 in your CSS using @font-face data URIs. This makes the fonts completely network-independent during the conversion process.