Font Viewer

Open a font file in your browser and see what is inside it, without installing it. Drop a TTF, OTF, WOFF or WOFF2 file and the viewer shows a line of your own text in the font, then every glyph in a grid with its glyph name and Unicode code point, including the alternates and ligatures that have no code point. Click a glyph for its details: advance width, side bearings, bounds, contours and points, drawn large with the baseline, x-height, cap height, ascender and descender, and with the outline points if you want them. Save any glyph as a PNG or an SVG, or the whole grid as one SVG sheet. The font information panel lists the names stored in the file (family, version, designer, licence), the weight and width classes, the embedding permission and the OpenType features, and a coverage table shows which Unicode blocks the font supports. WOFF2 files are decoded in the browser too. Nothing is uploaded.

100% private — everything runs in your browser. Everything runs in your browser; your font files are never uploaded.

100% private — runs in your browser
Drop a font file here or click to chooseTTF, OTF, WOFF or WOFF2: every glyph with its name and code point, glyph details, metadata and Unicode coverage

Runs in your browser: your font file is read on your device and never uploaded. The font parser (opentype.js) and the WOFF2 decoder load from the jsDelivr CDN. You may use what you make here, including commercially, with no credit needed. Glyphs you export are still covered by the font’s own licence.

How to view a font file

  1. Drop a font file on the box, or click Try a sample font.
  2. Type a line of your own text to see it in the font.
  3. Scroll the glyph grid, or filter it by block, by mapped or unmapped glyphs, or by a character, U+ code or name.
  4. Click a glyph for its metrics and outline, then save it as a PNG or SVG.

What you can use it for

  • Check a font you downloaded before installing it
  • See every glyph and ligature a font ships
  • Find a glyph’s name and code point for CSS or code
  • Export a single glyph as a PNG or SVG for a mock-up
  • Check which languages and symbols a font covers
  • Read a font’s licence and embedding permission

What the viewer reads from a font file

In the fontWhat you see
cmap table (characters to glyphs)The code point under each glyph in the grid; a coverage table by Unicode block
glyf or CFF outlinesEach glyph drawn; in the detail, contours, on-curve and off-curve points
hmtx (advance widths)Advance width and side bearings of the selected glyph
post or CFF glyph namesThe name under each glyph (A, eacute, f_i …)
name tableFamily, subfamily, full name, version, designer, licence, copyright and other names
OS/2 tableWeight class, width class, italic flag, embedding permission (fsType), vendor ID, x-height and cap height
head and hhea tablesUnits per em, created and modified dates, ascender, descender, line gap
GSUB and GPOSThe OpenType features the font lists (ligatures, kerning, alternates …)
fvar (variable fonts)Axes with their ranges and the number of named instances

Glyphs are drawn from their outlines, so glyphs with no code point are shown too. The line of sample text uses the font itself through the browser, so it shows what a web page would show.

The sample font

Read from the sampleValue
Glyphs88
Code points mapped86
Unicode blocks touched7
Units per em1000
Ascender / descender800 / -200
x-height / cap height500 / 700
Weight class400 (Regular)
OpenType featuresliga
Embedding (fsType)Installable: no embedding restriction set
GlyphCode pointAdvanceBounds (xMin, yMin, xMax, yMax)ContoursOn / off-curve points
AU+004160064, 14, 536, 686936 / 0
gU+006760064, -186, 536, 4861040 / 0
uni25CBU+25CB60075, 75, 525, 525216 / 16
f_inone60064, 14, 536, 6861352 / 0

The sample is a small font made by us for testing (MGD Test Sans, a pixel-grid face), so its glyphs are known. Computed by the viewer’s own reader. The ring has curves, so it has off-curve points; f_i has no code point and is reached through the liga feature.

Unicode coverage of the sample

Unicode blockCode points in the fontCode points in the block range
Basic Latin75128
Latin-1 Supplement1128
Greek and Coptic1144
General Punctuation6112
Arrows1112
Geometric Shapes196
Private Use Area16400

Block size counts every code point in the block’s range, including ones Unicode has not assigned. The same table appears for your font, with a CSV download.

What the test files give

Test fileFormatOutlinesGlyphsCode pointsWeightSame as an independent reader
Regular.ttfTTFTrueType8886400 Regularyes
Regular.otfOTFCFF8886400 Regularyes
Regular.woffWOFFTrueType8886400 Regularyes
Regular.woff2WOFF2TrueType8886400 Regularyes
Bold.woff2WOFF2TrueType8886700 Boldyes
Black.otfOTFCFF8886900 Blackyes

Computed at build time: the viewer’s reader on our own test fonts, compared glyph by glyph (names, advance widths, contours) with the values fontTools reads from the same files.

Embedding permissions (fsType)

fsType valueName in the specificationWhat the viewer says
0InstallableInstallable: no embedding restriction set
2Restricted licenceRestricted licence embedding: the font may not be embedded without the owner’s permission
4Preview and printPreview and print: may be embedded in documents that are viewed or printed, not edited
8EditableEditable: may be embedded in documents that can be edited
256No subsetting (added to the above)Installable: no embedding restriction set; no subsetting
512Bitmap embedding only (added to the above)Installable: no embedding restriction set; bitmap embedding only

The fsType field in the OS/2 table is set by the font’s maker and says how the font may be embedded in documents. It is a flag in the file, not a licence: the licence that came with the font is what counts.

Font formats

FormatWhat it isOpened here
TTFTrueType font: quadratic outlines in the glyf tableYes
OTFOpenType font, usually with PostScript (CFF) cubic outlinesYes
WOFFWeb font: the same tables, each compressed with zlibYes
WOFF2Web font compressed with Brotli and transformed tablesYes, decoded in the browser first
TTC / OTCSeveral fonts in one collection fileNo: extract one font first

A WOFF or WOFF2 file holds the same font as a TTF or OTF, so glyphs, names and metrics read the same.

Next steps

To find and copy a character fast, use the Character Map. To read only the licence and version fields, use the Font Metadata Inspector. To try your text in many fonts, use the Font Tester. To turn a WOFF2 into a TTF, use WOFF2 to TTF, and to cut a font down to the characters you need, the Font Subsetter.

Sources

Sources: OpenType specification: OS/2 table (usWeightClass, usWidthClass, fsType, fsSelection); OpenType specification: name table (name IDs); OpenType specification: glyf table (on-curve and off-curve points); W3C: WOFF File Format 1.0; W3C: WOFF File Format 2.0; opentype.js (MIT), version 1.3.4.

More free tools

Working with font files?

Inspect, convert and test fonts with free typography tools that run privately in your browser, with no sign-up and no watermark.

See all free tools →

Frequently asked questions

Is this font viewer free?

Yes. There is no sign-up, no watermark and no limit on how many fonts you open. The file is read in your browser, so it never leaves your device.

Which font files does it open?

TTF and OTF (TrueType or PostScript outlines), WOFF and WOFF2 web fonts. A TrueType Collection (.ttc) holds several fonts in one file, so it is refused with a note to extract one font first.

Does it open WOFF2 files?

Yes. WOFF2 is compressed with Brotli, so the viewer decodes it in your browser first (with the open-source WOFF2 decoder, loaded from jsDelivr), then reads the font as usual.

What are unmapped glyphs?

Glyphs with no Unicode code point, such as ligatures (fi, ffl), small capitals or alternates. You reach them through OpenType features, not by typing. The grid shows them with the label unmapped.

What do the points on the outline mean?

Filled points sit on the outline. Hollow points are control points that pull the curve: TrueType fonts use one between on-curve points (quadratic curves), OpenType CFF fonts use two (cubic curves).

Can I export glyphs?

Yes. Save the selected glyph as a PNG (256, 512 or 1024 px, transparent or white) or as an SVG, or download the current grid as one SVG sheet with names and code points. Exports of a font’s glyphs are still covered by the font’s licence.

Can I install the font from here?

No. The viewer reads the file; it does not install anything. Install a font through your operating system’s font settings.

Is my font uploaded?

No. The font file is read by JavaScript in your browser, so it is safe to open licensed or unreleased fonts.