fontTools is a library for manipulating fonts, written in Python. It’s an indispensable tool for font developers and font tool developers who need to deal with the finer details of TrueType and OpenType fonts, or anyone needing to create or process fonts beyond font editor capabilities.
The project includes the TTX tool, that can convert TrueType and OpenType fonts to and from an XML text format, which is also called TTX. It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.
The software is released under an open source license.
Key Features
- TTX — From OpenType To XML And Back. This tool lets users convert binary font files (.otf, .ttf, etc) to the TTX XML format, edit them, and convert them back to binary format:
- If an input file is a TrueType or OpenType font file, it will be decompiled to a TTX file (an XML-based text format).
- If an input file is a TTX file, it will be compiled to whatever format the data is in, a TrueType or OpenType/CFF font file.
- Option to allow virtual glyphs ID’s on compile or decompile.
- Split tables – save the TTX data into separate TTX files per table and write one small TTX file that contains references to the individual table dumps. This file can be used as input to ttx, as long as the table files are in the same directory.
- Split glyf table: Save the glyf data into separate TTX files per glyph and write a small TTX for the glyf table which contains references to the individual TTGlyph elements.
- Specify the folder where the output files are created.
- Specify which tables to dump or which tables to exclude.
- Merge partial
.ttxfiles with existing .ttf or .otf files. - List brief table info instead of dumping to
.ttx. - Split tables to separate
.ttxfiles. - Disable TrueType instruction disassembly.
- Supports the following tables: BASE, CBDT, CBLC, CFF, CFF2, COLR, CPAL, DSIG, EBDT, EBLC, FFTM, Feat, GDEF, GMAP, GPKG, GPOS, GSUB, Glat, Gloc, HVAR, JSTF, LTSH, MATH, META, MVAR, OS/2, SING, STAT, SVG, Silf, Sill, TSI0, TSI1, TSI2, TSI3, TSI5, TSIB, TSID, TSIJ, TSIP, TSIS, TSIV, TTFA, VDMX, VORG, VVAR, ankr, avar, bsln, cidg, cmap, cvar, cvt, feat, fpgm, fvar, gasp, gcid, glyf, gvar, hdmx, head, hhea, hmtx, kern, lcar, loca, ltag, maxp, meta, mort, morx, name, opbd, post, prep, prop, sbix, trak, vhea, and vmtx.
- Other tools:
- pyftinspect – inspect fonts.
- pyftmerge – merge fonts.
- pyftsubset – subset fonts.
FontTools requires Python 2.7, 3.4 or later.
Website: github.com/fonttools/fonttools
Support: Forum
Developer: Many contributors
License: MIT License
fontTools is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Font Editors | |
|---|---|
| FontForge | Create and modify postscript, truetype and opentype fonts |
| fontTools | Library to manipulate font files from Python |
| Birdfont | Vala based font editor |
| Glyphr Studio | Aimed at typeface design beginners and hobbyists |
| Fontra | Browser-based font editor |
| ftcli | Command line interface built with click to edit fonts using fontTools |
| Ygt | Graphical TypeType hinting program |
| Slice | Create custom font design spaces |
| TruFont | Streamlined and hackable font editor |
| Modular Font Editor K | Glyph editor for the Modular Font Editor K project |
Read our verdict in the software roundup.
| Font Renderers | |
|---|---|
| HarfBuzz | OpenType text shaping engine |
| FreeType | Small and efficient software font engine |
| LibICU | Libraries for Unicode and internationalization |
| Fontconfig | Library for configuring and customizing font access |
| FriBidi | Implementation of the Unicode Bidirectional Algorithm |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

