Font Presence Check Guide

A reference for the DeskTest.net Font Presence Check. It confirms, right in the browser, that the fonts a vendor app or a check printer needs are actually installed on this PC - the everyday office fonts, and the specialist check-printing fonts (MICR E-13B and a 3-of-9 barcode font) whose absence quietly turns a whole check batch into rejects. No font file or system data leaves the machine.

Open the Font Presence Check →

What does Font Presence Check do?

An application can only print with a font that is actually installed on the machine. When a required font is missing, the operating system silently substitutes a different one. For ordinary documents that just looks a little off. For a check or a barcode it is a real failure: the magnetic MICR line at the bottom of a check prints in the wrong glyph shapes, or a barcode prints as plain digits, and the batch is rejected downstream.

This tool checks a curated list of fonts and reports each one as Present or Missing, in two groups:

Nothing is uploaded. The whole scan runs in this browser tab by measuring text on an off-screen canvas and asking the browser's built-in font APIs. There are no network calls on the page. View the page source to confirm.

How to run it

  1. Open the tool on the workstation that will do the printing. Font installs are per-machine, so a check that passes on your laptop says nothing about the front-desk PC. Run it where the checks or labels are actually printed.
  2. Click "Run Font Check". Detection is instant and needs no permission and no file. You will see three steps complete: browser support, office fonts, and check-printing fonts.
  3. Read the verdict at the top, and expand the office and check rows to see the per-font table.
  4. If anything is missing, use Copy Diagnostic Report or Send to your IT to hand the exact list to whoever installs fonts, then rerun after they install it.

Reading the results and verdict

Each step row expands to a table listing its fonts with a Present or Missing pill and, for a present font, how it was detected (canvas width measurement, the Font Loading API, or - if you opted in - local-font access) and the exact family name it matched.

The verdict panel at the top gives the bottom line:

VerdictMeaning
All required fonts are installedEvery office and check-printing font this tool looks for is present. This PC is ready to print.
A check-printing font is missingMICR E-13B or the Code 39 barcode font is not installed. Do not run a check or label batch - it will print wrong and be rejected. Install the font first.
Some office fonts are missingCheck fonts are fine, so printing is not blocked, but a document or app that relies on a missing office font will render with a substitute.
A Missing result means "this browser could not detect the font on this machine". The most common real cause is that it genuinely is not installed. See How detection works for the rare edge cases.

Why check-printing fonts matter

Check printing is unusually unforgiving about fonts.

MICR E-13B is the font used for the line of account and routing numbers along the bottom of a check. It is a strict standard: each character has a defined shape and stroke that magnetic and optical readers at the bank expect. If the E-13B font is not installed, the printing app substitutes an ordinary font, the MICR line prints in the wrong glyphs, and the reader cannot parse it - so the item is rejected and has to be reprinted or handled manually. A missing MICR font can silently spoil an entire batch before anyone notices.

3-of-9 (Code 39) is a common barcode font used for batch tickets, document separators, and labels. Without the font installed, the value that should render as a scannable barcode instead prints as the plain characters between the asterisks, and no scanner can read it.

Use the vendor's licensed font, not a look-alike. Check and MICR fonts are licensed products that are built to meet the E-13B specification and print at the correct magnetic density. Do not substitute a free font you found online for MICR - it may look right on screen and still fail at the bank. Get the exact font from whoever supplies your check or label software.

How detection works (and its limits)

The primary method needs no permission and works in every modern browser. The tool draws a fixed probe string on an off-screen canvas in three generic fallback families - monospace, serif, and sans-serif - and records the pixel width of each. Then for a target font it draws the same string asking for "Target", <generic>. If the target is installed, the browser uses it and the measured width differs from that generic's own width. If it is not installed, the text falls back to the generic and the width is identical.

Testing against all three generics is deliberate. On Windows, for example, the generic sans-serif maps to Arial, so measuring Arial against sans-serif alone would show no difference and look like a false miss - but Arial still differs from serif, so the tool correctly reports it present. A font is counted present if it differs from at least one generic.

As a second confirming signal the tool also calls document.fonts.check() (the CSS Font Loading API). It is used only to add a positive result, never to override a width measurement.

Limits to be aware of

The optional "List installed fonts" button

On Chromium-based browsers (Chrome and Edge, version 103 and up) the tool offers an optional List installed fonts button after a scan. It uses the Local Font Access API to read the exact list of installed fonts, which lets it confirm matches by exact name rather than by measurement.

This is strictly opt-in. Clicking it triggers a browser permission prompt; nothing happens until you allow it, and even then the list is only used locally to refine the results shown on the page - it is never sent anywhere. If your browser does not support the API the button does not appear, and if you decline the prompt the measured results still stand. The default scan never calls it, so the tool works with zero prompts out of the box.

For IT admins: installing a missing font

When the tool reports a font Missing on a printing workstation, here is the fix.

Elsewhere on the web: