Introduction
FontForge is a free, open-source outline font editor that supports creating and editing fonts in OpenType, TrueType, PostScript, and many other formats. Originally created by George Williams, it has been a staple of the open-source typography community for over two decades.
What FontForge Does
- Creates new fonts from scratch with drawing tools for Bezier and Spiro curves
- Edits existing font files in OTF, TTF, SVG, UFO, and other formats
- Generates font binaries with OpenType feature tables and hinting
- Validates fonts against technical specifications to catch errors
- Supports scripting via Python and its own native scripting language
Architecture Overview
FontForge is written primarily in C with a GTK-based GUI and an embedded Python interpreter. The core engine handles glyph outlines as cubic or quadratic Bezier curves and manages font metadata through internal tables that map to OpenType/TrueType binary structures. The scripting layer exposes nearly every operation, enabling batch processing of fonts from the command line.
Self-Hosting & Configuration
- Available in most Linux distribution package managers
- macOS builds are provided via Homebrew or the official DMG
- Windows builds are available from the GitHub releases page
- Configure keyboard shortcuts and UI layout through Preferences
- Use Python scripts for batch operations like renaming glyphs or generating families
Key Features
- Full support for OpenType features including ligatures, kerning, and GSUB/GPOS tables
- Spiro curve drawing mode for smoother, more intuitive glyph design
- Built-in font validation and hinting tools
- Import SVG artwork directly as glyph outlines
- Extensive Python scripting API for automation and batch processing
Comparison with Similar Tools
- Glyphs — commercial macOS-only editor with a polished UI; FontForge is free and cross-platform
- RoboFont — Python-scriptable commercial editor; FontForge offers similar scripting for free
- Birdfont — simpler open-source alternative but with fewer advanced features
- Font Creator — Windows commercial tool; FontForge covers more formats
FAQ
Q: Can FontForge produce production-quality fonts? A: Yes. Many professional and popular open-source typefaces were created or refined with FontForge.
Q: Does FontForge support variable fonts? A: It has partial support for OpenType variable fonts, though dedicated tools like Glyphs handle this more smoothly.
Q: Can I automate font generation with scripts? A: Yes. FontForge exposes a full Python API and a native scripting language for batch operations.
Q: What platforms does FontForge run on? A: Linux, macOS, and Windows.