Convert Type 1 Fonts to OpenType with FontForge
FontForge is a free, open-source font editor that fully supports converting legacy PostScript Type 1 fonts into modern OpenType formats. Because major operating systems and applications like Adobe Creative Cloud have deprecated Type 1 font support, migrating legacy typefaces to OpenType is necessary for continued use. This article explains how FontForge handles this conversion, the steps to perform it, and the technical settings required to maintain outline quality and spacing.
To convert a Type 1 font successfully, you need the outline file
(typically .pfb on Windows or .pfa on
Unix/Mac) and its matching metrics file (.pfm or
.afm). Keep both files in the same directory under the same
base name. When FontForge opens the outline file, it automatically reads
the associated metrics file to preserve critical kerning, tracking, and
character width data.
To perform the conversion using the FontForge graphical interface, follow these steps:
- Launch FontForge and select File > Open. Browse
to your folder and open the
.pfbor.pfafile. - Check the character map to verify that all glyphs have imported properly and that encoding matches the original design.
- Open Element > Font Info to verify and update metadata such as the Font Name, Family Name, and Version, ensuring modern software recognizes the family structure correctly.
- Go to File > Generate Fonts.
- Select OpenType (CFF) from the format drop-down
list. This generates an
.otffile. - Choose a destination folder and click Generate. If FontForge displays a warning about non-standard glyph names or minor self-intersections, review the issues or proceed with generation if the source font was already functioning properly.
Choosing OpenType (CFF) rather than OpenType
(TrueType) is the recommended route for Type 1 fonts. Both Type 1 and
OpenType-CFF use cubic Bézier curves to define outlines. Selecting
OpenType (CFF) allows FontForge to transfer the mathematical outlines
directly into the new format without recalculating or approximating the
curves. Converting to TrueType (.ttf) forces FontForge to
convert cubic curves into quadratic curves, which can introduce subtle
rounding changes to glyph geometry and require new hinting.
For users with extensive font libraries, FontForge also supports
automated batch conversion via its Python scripting interface or native
command-line tool. A basic script can loop through a directory of
.pfb files, open each font, and execute the
generate() method, enabling rapid migration of entire font
collections to the OpenType format without manual user intervention.