How to Remove Redundant Points in FontForge

Complex vector shapes imported into FontForge often contain extraneous anchor points that bloat file sizes and cause rendering errors. This guide covers how to clean up these vectors efficiently using FontForge’s automated simplification commands, precision clean-up utilities, and non-destructive manual point merging.

Using the Simplify Tool

The fastest way to reduce excess nodes automatically across an entire shape or specific path is the Simplify function.

  1. Double-click the glyph containing the complex shape to open the Glyph Edit Window.
  2. Select the paths you want to optimize. Press Ctrl+A (or Cmd+A on macOS) to select the entire shape, or use the Pointer tool to drag-select specific sections.
  3. Navigate to the top menu and select Element > Simplify > Simplify (shortcut: Ctrl+Shift+M or Cmd+Shift+M).

FontForge will remove points along flat lines and smooth curves where the shape can be described accurately with fewer Bézier control handles.

Adjusting Simplification Parameters

If the default simplify command distorts your curves, adjust the tolerance:

  1. Go to Element > Simplify > Simplify More...
  2. In the dialog box, adjust the Error Bound (measured in font units). A lower number preserves exact geometry, while a higher number aggressively strips out points.
  3. Check Allow removal of extreme points only if you plan to regenerate font extrema later.
  4. Click OK to apply.

Merging Points Manually

When you need to remove individual nodes without breaking or opening the contour, use the Merge command rather than deleting them.

  1. Click directly on the redundant point using the Pointer tool.
  2. Press Ctrl+M (or Cmd+M) or select Element > Merge.

Unlike pressing the Delete or Backspace key—which cuts the path open—merging removes the selected point and recalculates the surrounding Bézier handles to keep the contour closed and intact.

Removing Overlapping and Coincident Points

Imported vectors frequently contain duplicate points resting on the exact same coordinates.

  1. Select the entire shape.
  2. Go to Element > Clean Up.
  3. FontForge will evaluate the path and merge zero-length segments, remove overlapping points, and eliminate obsolete control handles.

Post-Optimization: Adding Extrema

After stripping redundant points, font formats (such as OpenType and TrueType) render best when anchor points exist at the vertical and horizontal extremes of every curve.

  1. Select the cleaned shape.
  2. Choose Element > Add Extrema (shortcut: Ctrl+Shift+X or Cmd+Shift+X).
  3. Check the paths to ensure the geometry is optimized, stable, and ready for font generation.