Building Glyphs from Element References

A small library of shared parts can support a large set of glyphs. References work best when those parts are intended to remain the same drawing under different placements or transformations. Keep local differences independent when the design needs them.

Element References as Building Blocks

Begin with a recurring part that has a clear role: a serif, stem, bowl, dot, or terminal. Put it in its own contour element and give that element a descriptive name in the Elements panel. The name makes it available through the font's Gallery.

A useful first exercise is a repeated geometric symbol:

  1. Draw the recurring part in a separate element and name it.
  2. Open Window > Panels > Gallery and locate the named content.
  3. Place or drag a reference into the target glyph.
  4. Use the Element tool to position, rotate, mirror, or scale the occurrence.
  5. Place the remaining references needed for the symbol.
  6. Make a small trial contour edit through an unlocked occurrence and inspect every use of the part.

The trial establishes that the link is real and that its scope matches your intention. Undo it if it was only a test. Use pins where the parts should meet at named attachment positions rather than at independently maintained offsets.

Derive related forms

A reference plus a transformation can produce a useful starting form. Scaling a capital can start a small capital; scaling and shifting a lining figure can start a superior figure. A further vertical offset can place a related inferior form. These operations retain a shared source drawing while letting each occurrence occupy its own position.

They are starting constructions, not automatic optical corrections. Small capitals and small figures often need changes in weight, proportion, and detail that simple scaling cannot provide. Unlink or use a separately designed source when those differences should not propagate back to the larger form.

A mirrored bracket or arrow is a more direct geometric reuse. Remember that a one-axis mirror reverses the displayed contour winding. Check fill and any direction-sensitive treatment when the mirrored part interacts with other content.

Choose a repertoire that benefits

Symbols, arrows, geometric shapes, dingbats, and monochrome emoji often repeat exact parts. An arrowhead can appear at both ends of one glyph, a chevron can recur in four rotations, and a box-drawing piece can appear across many characters. A reference library lets one correction update those repeated parts consistently.

CJK and other stroke-based repertoires can also benefit from reusable strokes or radical-like clusters. Their scale makes maintenance valuable, but context often changes proportions and junctions. Reuse the parts that truly share a design; do not force every superficially related stroke into one identical drawing.

Latin work offers the same choices at a smaller scale: a stem across n, h, m, and u, or related bowls across b, d, p, and q. Reflection and rotation explain some relationships, but optical asymmetry can require distinct sources or local copies.

The Gallery is a library within the working font, not a promise that every named part is suitable for every context. Use names that identify design roles, inspect usage counts before shared edits, and retain a native source with the reference structure intact.

Reference reuse earns its complexity in large, regular, transform-related repertoires. For ordinary accented-letter composites, glyph components often provide a simpler relationship because the base and mark already need glyph-level metrics and anchors. Experimental skeleton-based reuse and filter constructions offer additional possibilities, but introduce generated-geometry behavior; see Designing with Skeletons and Live Filters.

Modeling Elements with Components

The same cross-glyph building block can be represented as a helper glyph and placed through ordinary components. A non-exporting glyph remains in the source but is excluded as a glyph from production output. It can still supply drawing content to glyphs that do export.

The reserved noexport tag controls this state. The Glyph panel's Export control adds or removes that tag; its label is struck through when export is disabled. It is different from leaving the glyph unencoded: an unencoded glyph can still be needed in an exported font, for example as a substitution target.

Build a shared face ring

Suppose several emoticons use the same ring around different facial features. You can keep the ring as a named element reference, or give it a helper glyph:

  1. Create an unencoded glyph with an unused descriptive name, such as _faceRing.
  2. Draw the ring and establish any metrics or attachment points that its component use needs.
  3. Disable export for the helper with the Glyph panel's Export control, and verify the noexport tag.
  4. In each face glyph, use Glyph > Add Component… to place _faceRing.
  5. Add the remaining face details and inspect the host's spacing.
  6. Change the helper on a trial basis and check that the consuming glyphs update.

Use a project-specific helper name rather than taking a standard name such as ring if that glyph already has another purpose in the font. A leading underscore is a naming convention here; verify the actual export state instead of relying on the spelling alone.

When producing a format that excludes the helper, FontLab resolves the drawing needed by its consumers rather than leaving an unusable reference to a missing exported glyph. The exact resolution depends on the output format and profile; see The Export Process. Check an export to confirm that the helper is absent and the face rings remain.

Weigh the two routes

Element-reference library Non-exporting helper glyph
Reuses an arbitrary part in place Gives the part a separate glyph identity
Adds no helper glyph to the inventory Adds a source name and glyph to manage
Keeps instances as peers Gives components a designated source
Supplies element content and pins Can supply glyph-level metrics, anchors, and hinting relationships
Particularly convenient for repetition within one glyph Uses familiar component tools, recipes, and source/dependent selection

With a helper glyph, Composites of Selected and Component Sources expose the dependency graph in the Font window. You can use the helper by name in recipes and inspect it as a complete glyph. With a reference, the part can remain embedded in an existing glyph while sharing its content elsewhere.

Choose the helper route when the block benefits from whole-glyph treatment. Choose references for genuine sub-glyph fragments and repeated placements that need no glyph-level data. Choose independent drawing when the forms should develop separately.

Marking content non-exporting also supports reversible subsetting: excluded work stays in the native source. It does not prove that feature code or classes referring to those names have been repaired automatically. Review those dependencies and the export report before delivering a subset.