Fix PostScript Name Collisions in FontForge

PostScript name collisions occur during font export when two or more glyphs in your font project share the exact same PostScript glyph name. Because the PostScript and OpenType formats require every glyph to have a unique identifier, FontForge halts the generation process to prevent file corruption. Resolving this issue involves locating the duplicate names, renaming or removing the redundant glyphs, and applying standard naming conventions to ensure a successful export.

1. Locate the Conflicting Names

When the export fails, FontForge typically displays an error dialog indicating the specific glyph name that caused the collision (such as afii10065 or uni0041).

To find the duplicates manually:

  • Open the View menu and select View By, then choose PostScript Glyph Name to display glyphs by their PostScript labels.
  • Alternatively, go to Edit > Find and search by the problematic name specified in the error prompt.
  • Note every glyph cell sharing that exact identifier.

2. Rename the Colliding Glyphs

Once identified, assign a unique name to one of the conflicting glyphs:

  1. Right-click the duplicate glyph and select Glyph Info (or press Ctrl+I / Cmd+I).
  2. In the Glyph tab, locate the Glyph Name field.
  3. Change the name to a unique identifier. If the glyph is a stylistic alternate, append a period followed by an identifier (e.g., change a to a.alt or a.ss01).
  4. Click OK to save the changes.

3. Automatically Standardize Glyph Names

If multiple glyphs have conflicting names due to imported vectors or encoding mismatches, you can let FontForge reset names according to standardized databases:

  1. Select all glyphs in your font (Ctrl+A or Cmd+A).
  2. Go to Encoding > Rename Glyphs.
  3. Choose either Adobe Glyph List or Unicode. FontForge will automatically parse the Unicode values and assign correct, non-colliding PostScript names to all recognized characters.

4. Remove Redundant Glyphs

Collisions often occur when a character slot contains an unassigned or empty duplicate of another glyph.

  • If a glyph has no Unicode value and is not used as an alternate or component in an OpenType feature, select it and choose Edit > Clear to remove it from the font completely.

5. Check Multiple Encoding Slots

A single glyph mapped to multiple encodings can trigger collision warnings:

  • Navigate to Encoding in the top menu and select Compact. This collapses unencoded slots and prevents hidden duplicates from interfering with the export.
  • When exporting via File > Generate Fonts, ensure the output format options (such as OpenType CFF or TrueType) match your intended character mapping to prevent forced name reassignments.