The Stem Tool
The Stem tool edits strokes within an existing outline. You can raise a crossbar, make two uprights heavier, or change a diagonal's inclination while the connected contours adjust. The result remains ordinary outline geometry that you can inspect and refine with the Contour tool. Begin with a clearly detected stroke and check both the changed shape and its surroundings after each edit.
Detected Stems and the Stem Tool
A detected stem is a stroke region FontLab recognizes geometrically. Its thickness is measured across its direction: horizontally for a vertical stem, vertically for a crossbar, and perpendicular to a diagonal. For a tapered or curved stroke, the measurement describes the relationship at one position, not a uniform width throughout the stroke.
The highlight marks a detected measurement region, not a clipping boundary. Connected joins and attached details can participate in an edit outside that region. Horizontal and vertical highlights can also span a broader band than the visible stroke. Detection does not identify the optical correction your design needs: inspect the highlight before acting on it. If the intended stroke is not recognized, use point editing; see Basic Node and Handle Operations.
Make the intended editable layer current, then choose Tools > Tool > Stem, click the Stem button in the Toolbar, or press 6 with the canvas focused. Double-click the Toolbar button to open its toolbox. Choose Move, Thickness, or Rotate; the toolbox also contains Keep sidebearings when editing stems. For toolbox placement, see Glyph Window Anatomy.
Hover over a stem to see its highlight and thickness. Shading varies with thickness; it is not a pass/fail signal. During a drag, the feedback reports thickness, displacement, or angle according to the operation. The Scoreboard enlarges that feedback; see Selecting and the Contour Tool.
A detected stem is distinct from a standard stem, used as a keyboard step target below, and a stem hint; see Glyph-Level PostScript Hints. The separate Thickness tool (8) works on skeleton strokes and brushes; see The Thickness Tool. For measuring stem widths without editing, see the AutoMeter in Live Measurement.
Selecting Stems
A stem selection is a set of detected stems in the current layer. It is separate from the Contour tool's point selection described in Selecting and the Contour Tool. Establish the set before starting an edit, especially where several strokes meet.
Click a highlighted stem to select it. Shift-click another stem to add it, or Shift-click a selected stem to remove it. For two uprights, click the first and Shift-click the second, checking both highlights before moving the pointer into position for the edit.
To select an area, start dragging on empty canvas. An ordinary drag creates a rectangular frame. Option-drag on macOS or Alt-drag on Windows creates a lasso. Add Shift to either gesture to toggle the stems it intersects. These gestures test detected regions, so a partly intersected stem can join the selection without being fully enclosed. Inspect broad highlights as well as the visible strokes when checking the result.
A drag begun on a selected stem acts on the selected group. A drag begun on an unselected stem normally replaces the selection with that stem. Select the group first, then start the editing drag on one of its members. Dragging a different region is not a way to reposition an already selected group.
Click empty canvas or press Escape with the canvas focused to clear the selection. Changing the glyph, layer, or editing window can also clear it. Undo and Redo can rebuild point identities, so check the highlights and reselect stems before the next operation. A selection that was correct before a structural change should be checked against the restored drawing.
Moving and Thickening Stems
A stem edit changes a detected stroke and adapts its connected outline. Move shifts the stroke across its direction while preserving thickness: a vertical stem moves horizontally, a crossbar vertically, and a diagonal perpendicular to itself.
To raise or lower a crossbar:
- Open an editable
Hand choose Move in the Stem toolbox. - Select only the crossbar; check that neither upright is selected.
- Drag upward or downward, judging the counters above and below the bar as well as the bar itself.
- Release, then inspect the joins and compare the glyph in text.
Short pointer travel gives a finer response than a long drag. Read the numeric feedback rather than equating screen travel with font units. For a group, movement applies across each stem's own direction; mixed horizontal and vertical stems do not move along one common vector.
Choose Thickness to change the separation of the detected sides. Drag across the stroke and inspect the connected nodes, handles, and attached details as they respond. Option/Alt, held when beginning a drag, exchanges Move and Thickness. Check the active operation before starting.
Enter a numeric change
Use the Stem property bar or the Contextual widget described in Glyph Window Anatomy. Select the stems, choose the operation, enter a value, then click Apply or press Return/Enter in the field.
A Move value is a displacement, not a destination. For an ordinary horizontal crossbar, 10 raises it ten font units and -10 lowers it ten units; neither entry sets its final y coordinate.
A Thickness value without a leading sign is an absolute target. If two selected stems measure 80 and 100 units, entering 90 requests 90 for both. A leading + or - instead changes each thickness by that amount: +5 requests 85 and 105, retaining their difference. Mixed describes differing selected thicknesses; it is not an average or a target. Every resulting thickness must stay positive. After applying a value, read back the measurements and inspect the construction and spacing.
Use keyboard steps
With the canvas focused, Move uses arrow keys for one-unit steps, or Shift+Arrow for ten. The movement is projected onto each stem's perpendicular direction. Left/Right moves a vertical stem; Up/Down moves a crossbar. An arrow along a stem has no perpendicular movement, and a diagonal's displacement can be smaller than the nominal step.
In Thickness, Right/Up adds one unit and Left/Down removes one. Shift+Arrow steps to the next suitable standard stem width for the current master, falling back to ten units when no next value exists. Horizontal strokes use horizontal standards and vertical strokes use vertical standards. These registered hinting reference widths are covered in Alignment Zones and Standard Stems; editing the outline does not redefine them.
Option/Alt exchanges movement and thickness stepping. Check the final values for every selected stem: a standard-width step can differ between members of a group. Arrow keys do not rotate stems.
Rotating Stems
Choose Rotate in the toolbox, or Shift-drag from Move or Thickness. Shift-dragging rotates; Shift-clicking changes the selection. Make the selection first so that the gesture acts on the intended stems.
The end farther from the drag's starting position stays fixed. Begin near the end you want to move, then make a small drag and inspect the opposite end, joins, and counters. Starting near the middle makes the pivot less obvious. If the wrong end stays fixed, undo the edit and begin again nearer the end that should move.
With several stems selected, each turns about its own corresponding end. To rotate a whole selection around one common origin, use the Rotate tool or Free Transform; see Contour Transformations. Stem rotation is useful when each stroke should retain its own connection, but the surrounding contours still need inspection.
For a numeric adjustment, choose Rotate in the property bar or Contextual widget, enter an angular change in degrees, and apply it. 5 requests a five-degree change, not a final angle of five degrees; a negative value requests the opposite direction. There is no separate pivot field. Use dragging to choose the fixed end through the starting position. Arrow keys do not provide rotation steps.
With Rotate active, double-click an eligible vertical stem to align it with the current master's italic angle; see Preparing for Italics. This changes the outline, not the italic-angle metadata. It acts on that stem alone, replacing the selection for the operation, and is not a general command for straightening a diagonal. Check the joins after alignment just as after a manual rotation.
Spacing, Rounding, and Junctions
Keep sidebearings when editing stems preserves spacing clearances during drag edits and numeric Move and Rotate. Thickening an outer upright can change the drawing's bounds, so keeping both bearings may require shifting the drawing or changing its advance width. Inspect all three values together. Numeric Thickness and keyboard steps do not use this preservation step; check their spacing separately. Existing metrics expressions are recalculated; see Relational Spacing.
Coordinate rounding can make the committed result differ from the unrounded drag preview; see Coordinate Precision. A deformation that cannot be retained may stop at the last valid preview or be cancelled. Read the final values after release or numeric application. Try a smaller change or a simpler selection if the result fails.
Releasing the pointer or applying a number commits the edit. Escape afterward clears the selection; Edit > Undo reverses the change. Check and, if necessary, restore the stem selection after Undo or Redo.
In Move or Thickness, double-click a detected stem away from its nodes to split eligible joined regions into overlapping construction parts. This runs in the opposite direction to Remove Overlap; see Overlaps and Boolean Operations. In Rotate, double-clicking an eligible vertical stem instead invokes the italic-angle shortcut.
Junction reconstruction changes point and contour structure. It does not recover drawing history or create components, and not every junction supplies a usable split. Inspect the new boundaries with the Contour tool and keep the result only if it suits the next edit. Rotation and junction reconstruction act on the current layer; an edit's reach across masters is covered in Editing across Masters.
Before retrying an unsuccessful operation, check the immediate cause:
- No highlight: make the intended glyph and editable layer current, check locks, and move the pointer away from nodes.
- Wrong stems move: inspect the selection and whether the drag began on one of its members.
- Apply is unavailable: check the selection and value; movement and rotation need a nonzero change, and resulting thicknesses must remain positive.
If the intended region still cannot be edited usefully, return to point-level contour editing.