The Em and the Coordinate System

The Glyph window measures a drawing in font units. These units describe proportions inside the font; their physical size is determined when the font is used. A letter can therefore keep the same outline coordinates whether it is displayed in small text or enlarged to fill the screen.

The Em and Units per Em

The em is the font's reference size. Its name comes from the body of metal type; in a digital font it is an abstract measure, commonly pictured as a square. It establishes the scale of the design. It is neither the width of every glyph nor a box that must contain every outline.

Units per em, abbreviated UPM, specifies how many font units make one em. At 1000 UPM, one font unit is one thousandth of the em. A cap height of 700 units is therefore 70% of the em. At a nominal text size of 10 points, that cap height is 7 points before any rendering adjustments.

The same 700-unit cap height at 2000 UPM is only 35% of the em. Coordinates acquire their proportions through the UPM value, so a coordinate number alone does not tell you how large a shape will appear in text.

For OpenType output, use a UPM value from 16 to 16384. Common choices include 1000, 2000, and 2048. A power of two, such as 2048, can benefit some TrueType rasterizers, but it is not a requirement for every font. The value does not need to match the font's ascender-to-descender span.

UPM changes

Open File > Font Info > Family Dimensions and use the UPM control to open the change dialog. Changing this value presents an important choice:

  • Scale glyphs and metrics to the new UPM value changes their coordinates proportionally. Doubling UPM and doubling a 700-unit cap height to 1400 units preserves its proportion of the em.
  • Changing UPM only leaves the coordinates unchanged. Doubling UPM while retaining a 700-unit cap height makes that drawing half as tall at the same nominal text size.

Change UPM distinguishes changing the UPM value alone from scaling glyphs and metrics to match it.

Change UPM distinguishes changing the UPM value alone from scaling glyphs and metrics to match it.

Choose the scaling behavior deliberately before applying the change. To gain a finer integer grid while retaining the design's size in text, scale the glyphs and metrics together with the UPM. Check outlines and spacing afterward, particularly when the change involves rounding.

Font units and pixels

A font unit is not a screen pixel. Pixels per em, or PPM, describes the em's size in pixels at a particular rendering size. If a 1000-UPM font is rendered at 20 PPM, 50 font units correspond to one pixel before hinting and rasterization adjustments.

The role of pixels per em in rendering is developed in Hinting and the Pixel Grid and The TrueType Hinting Model and Workspace. Canvas zoom changes how closely you inspect those coordinates. It does not change UPM, the saved outline, or the font size requested by an application using the font.

The Glyph Coordinate System

Each glyph has a two-dimensional coordinate system. The horizontal x-axis runs along the baseline, where y is zero. The vertical y-axis runs through the origin, the point (0, 0).

  • Increasing x moves right.
  • Decreasing x moves left.
  • Increasing y moves up.
  • Decreasing y moves down.

A point at (120, 500) is 120 units to the right of the origin and 500 units above the baseline. A point at (120, −200) is directly below it, 200 units below the baseline.

The baseline remains the reference even when the glyph has no outline touching it. A space glyph still has an origin and an advance width. An accented letter can extend above the usual capital height; a descender can extend below zero. The x-height, caps height, ascender, and descender references are positive or negative y values measured from this baseline; see Font Metrics and Glyph Metrics. Nodes, handles, guides, and metric positions all use coordinates in font units within this frame.

The origin is also the horizontal reference for the glyph's placement. In ordinary upright metrics, the distance from x = 0 to the drawing's left extent is its left sidebearing. The advance width determines where the next glyph's origin is placed before kerning or other positioning adjustments. A glyph can extend to the left of its origin or beyond its advance width; those overhangs are valid drawing positions.

The glyph-information widget reports the current glyph’s measured extents.

The glyph-information widget reports the current glyph’s measured extents.

The Em and the Font Bounding Box

The font bounding box is the smallest rectangle enclosing the font’s glyph drawings. Its left, right, top, and bottom edges describe their combined extent. FontLab computes bounds from the current drawings. Unlike the em, those bounds can change when you add an accent, extend a swash, or move a descender.

The em establishes scale; the bounding box records the design's extent. Increasing a glyph's height does not automatically increase UPM, and increasing UPM alone does not enlarge the stored outline coordinates.

Use the actual bounds when assessing how much vertical room a font needs. Do not assume that all content fits within one em or within the ascender and descender lines. When inspecting a calculated bound, also check whether it covers all glyphs or only a chosen character set: a subset can omit the font's tallest or lowest drawing. Family safe bounds are introduced in Font Metrics and Glyph Metrics; their detailed update and export behavior belongs to the Font Info reference and The Export Process.