How to Verify OpenType Features in FontForge
Exporting a font from FontForge does not always guarantee that
advanced typography features, such as ligatures, kerning, or stylistic
alternates, are properly written to the final binary. This guide
outlines how to confirm that your OpenType features (GSUB
and GPOS tables) have successfully transferred into your
exported OTF or TTF file using built-in preview tools, specialized font
inspection software, and command-line utilities.
1. Test Feature Lookups in FontForge's Metrics Window
Before exporting, confirm that FontForge is actively applying your feature lookups.
- Navigate to Window > New Metrics Window.
- Type a string of characters that triggers your feature (for example, "fi" for standard ligatures).
- Open the Features menu at the top of the Metrics Window.
- Toggle the specific OpenType tags (such as
liga,kern, orsmcp) on and off to verify that the glyph substitutions and positioning changes occur as expected.
2. Inspect Exported Tables Using TTX (FontTools)
The most definitive way to check an exported font file is to inspect
its internal tables using ttx, a tool included with the
Python library FontTools.
Install FontTools via your command line:
pip install fonttoolsDecompile the OpenType layout tables of your exported font:
ttx -t GSUB -t GPOS yourfont.otfOpen the resulting
.ttxXML file in any text editor.Search for the
<FeatureRecord>tags. Verify that your designated 4-letter feature tags (e.g.,calt,liga,kern) are listed and correctly reference their corresponding lookups. If theGSUB(Glyph Substitution) orGPOS(Glyph Positioning) tables are missing entirely, FontForge failed to compile your feature scripts during export.
3. Use Web-Based Font Testing Tools
Interactive browser-based analyzers allow you to drag and drop your exported font to view compiled tables and test functionality live.
- Wakamai Fondue: Drag your font into the tool to receive a complete breakdown of every OpenType feature compiled into the binary. It provides a visual interface showing which layout features are available and allows you to test them in real time.
- FontDrop!: This tool displays general font metadata and lists all supported OpenType features, glyph mappings, and substitution tables directly in your browser.
4. Verify in Layout Applications
Desktop applications handle OpenType tables differently depending on their text layout engines.
Adobe InDesign / Illustrator: Install the font, open the OpenType panel, and check if the icons for your features (such as Discretionary Ligatures, Fractions, or Swashes) are active and clickable. If a feature icon remains greyed out, the application did not detect the corresponding feature tag in the font's binary.
Web Browsers via CSS: Create a simple local HTML file and apply your font using
@font-face. Test the features by explicitly toggling them with CSS:p { font-family: 'YourFont', sans-serif; font-feature-settings: "liga" 1, "kern" 1; }Toggle the value between
1(on) and0(off) in your browser’s developer tools to ensure the rendering engine executes the substitutions.