Hinting and the Pixel Grid
A scalable outline must eventually be rendered at a particular size and resolution. Hinting helps preserve important relationships when the pixel grid is too coarse to reproduce every detail of that outline faithfully.
Rasterization and Gridfitting
Rasterization converts an outline into pixels. At small sizes, the positions of edges relative to the grid can make nominally equal stems appear unequal or make aligned letters appear to have different heights.
Gridfitting deliberately adjusts the scaled outline before it is rendered. Hinting data identifies relationships that should survive that adjustment: shared alignment levels, related stem widths, and controlled distances between points.
The relevant size is pixels per em, usually abbreviated PPM or ppem. A 16-PPM rendering gives the em a height of 16 pixels; it does not mean that every capital is 16 pixels tall. Point size and PPM are related through the rendering resolution and scale, so the same point size need not produce the same pixel grid on different devices.
Hinting does not repair the source design. It guides a rendered interpretation of it. Judge the unhinted outline and its gridfitted result separately when deciding whether a problem belongs to the drawing or the rendering instructions.
Declarative and Imperative Hinting
This Part teaches PostScript hinting. The following Part, beginning with The TrueType Hinting Model and Workspace, teaches TrueType hinting. The split follows the two outline technologies introduced in Curves, Direction, and Fill: PostScript's cubic-outline world and TrueType's quadratic-outline world carry different hinting models and rasterizer expectations.
PostScript hinting is primarily declarative. The font identifies important edges and dimensions, and the rasterizer decides how to honor them at the requested size. Alignment zones express shared vertical relationships, while stem information identifies stroke widths intended to behave consistently. Glyph hints identify where those relationships occur in each drawing. The designer describes the important structure without writing a separate sequence of point-moving instructions for every rendering size.
TrueType hinting is imperative. Programs direct operations on points and distances, using shared font data and size-dependent decisions. An instruction can establish a reference position, control a distance from it, or adjust a point at particular sizes. The interpreter executes those instructions within the rasterizer's supported behavior. This offers explicit control but also requires the program's operations and their order to make sense together.
Both approaches address the same practical difficulty: a finely placed outline is being represented on a much coarser grid. Two stems intended to look equal can fall differently against that grid. A hinting model provides a way to preserve their relationship rather than accepting every independent rounding result. It also has to balance consistency against changes in shape, counters, and spacing. A technically consistent gridfit is not automatically a convincing rendering of the design.
The distinction explains why the workflows differ. PostScript work begins with useful zones and representative stems, then examines how glyph hints use them. TrueType work introduces font-wide values and explicit point instructions, followed by inspection across sizes. Neither is simply an extra drawing tool: the source outline and the instructions for interpreting it on a grid are related but separate information.
Converting cubic curves to quadratic curves therefore does not translate every hinting decision automatically. The drawing's representation changes, and its point structure may change with it. Outline conversion, hint generation, and inspection are separate parts of preparing a font for a target technology. Keep the native source and judge the resulting rendering in the output environment rather than assuming that an attractive outline or a successful conversion proves the hints are suitable.
Zones, Stems, and the Two Levels
Rounded and pointed shapes often extend slightly beyond the alignment of flat shapes. This overshoot makes them appear to reach the same height at larger sizes. At a small pixel size, an overshoot can instead become an unwanted extra pixel.
An alignment zone identifies a shared vertical alignment level and its overshoot region. During gridfitting, relevant hinted edges within it can be snapped to one pixel row, suppressing overshoot at small sizes so related shapes align. A standard stem records a representative stroke thickness so related stems can be rendered consistently.
These are font-level data. Glyph-level hints identify the actual edges and stems to which that information applies. In PostScript hinting, a zone without a corresponding glyph-level hint has no influence on that glyph’s rendering. The glyph hint triggers the shared relationship; defining the font-level zone alone does not identify every edge.
Consider the tops of a flat capital and a round capital. Their source outlines may intentionally reach different heights so that they appear aligned at large sizes. At a small size, that small geometric difference can become a full pixel and make the round capital look taller. A zone identifies the relationship that should be preserved when such detail is suppressed. The source overshoot remains part of the drawing; gridfitting changes its rendered interpretation.
A standard stem addresses a related problem in thickness. Strokes intended to look alike should not alternate arbitrarily between pixel widths simply because their source edges fall at different fractions of a pixel. The shared stem value provides a reference, while each glyph's hints identify the relevant stroke. This is why font-level preparation and glyph-level coverage must be examined together.
Neither mechanism makes all drawings identical. Rounded strokes, diagonals, accents, and deliberately different weights still require their intended geometry and suitable interpretation. The aim is consistent relationships at the sizes where the pixel grid would otherwise distort them, not numerical uniformity throughout the source. A zone or standard stem is useful only when it describes an actual design relationship and the relevant glyph hints engage it.
Both hinting technologies use shared font data and glyph-specific work, although they encode and execute it differently. Font Info > Zones and Font Info > Stems provide the starting font-level information; their workflow is taught next in Alignment Zones and Standard Stems.
Testing Hinted Output
Inspect a range of small sizes. A correction that improves one PPM can make a neighboring size worse, and a satisfactory capital does not establish that lowercase, accents, and punctuation behave consistently.
Compare hinted and original outlines, then judge the rendered text. Check repeated stems, baseline and height alignment, counters, spacing, and the transition between sizes. Use representative strings rather than only isolated glyphs.
FontLab provides rasterized preview controls; its TrueType workspace adds a multi-size waterfall and pixel inspection. Those previews are diagnostic tools. Test exported fonts in the intended rendering environments as well, because rasterizers and smoothing settings can honor hinting differently.