fonttools
Tools to manipulate font files
Install
fonttools on PyPI
pip
pip install fonttoolsuv
uv add fonttoolspoetry
poetry add fonttoolsPackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 91 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: fonttools-4.63.0-py3-none-any.whl
About fonttools
from the package's own PyPI description — quoted content, verbatim
|CI Build Status| |Coverage Status| |PyPI| |Gitter Chat|
What is this? ~~~~~~~~~~~~~
| fontTools is a library for manipulating fonts, written in Python. 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 project has an MIT open-source
license <LICENSE>__.
| Among other things this means you can use it free of charge.
User documentation <https://fonttools.readthedocs.io/en/latest/> and
developer documentation <https://fonttools.readthedocs.io/en/latest/developer.html>
are available at Read the Docs <https://fonttools.readthedocs.io/>_.
Installation ~~~~~~~~~~~~
FontTools requires Python <http://www.python.org/download/> 3.10
or later. We try to follow the same schedule of minimum Python version support as
NumPy (see NEP 29 <https://numpy.org/neps/nep-0029-deprecation_policy.html>).
The package is listed in the Python Package Index (PyPI), so you can
install it with pip <https://pip.pypa.io>__:
.. code:: sh
pip install fonttools
If you would like to...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
fontTools is a library for reading, writing, and manipulating font files in formats including TrueType, OpenType, WOFF, and Type 1, with a command-line tool (TTX) for converting fonts to and from XML.
Installs cleanly with no runtime dependencies; actively maintained with recent releases and strong community engagement (5203 GitHub stars). Supports Python 3.10–3.14.
MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
Usage
pip install fonttools
from fontTools.ttLib import TTFont
font = TTFont('example.ttf')
print(font.getGlyphOrder())
Requires Python 3.10 or later. Some optional features (WOFF2, UFO, plotting) require additional packages installed via extras like `pip install fonttools[woff,ufo]`.
Verdict: fontTools is a mature, well-maintained font manipulation library with zero known vulnerabilities, no required external dependencies, and broad Python version support. Its permissive MIT license and top-1000 PyPI popularity make it a reliable choice for font processing tasks.
Needs verification
- Whether the package's optional dependencies (brotli, scipy, matplotlib, etc.) are well-tested and stable for the specific use cases you need.
- Performance characteristics when working with very large font files or batch processing scenarios.
Similar packages
permissive · top 1,000 on PyPI
reportlabpermissive · top 1,000 on PyPI
zopflipermissive · top 1,000 on PyPI
contourpypermissive · top 1,000 on PyPI
cyclerpermissive · top 1,000 on PyPI
networkxpermissive · top 1,000 on PyPI
filetypepermissive · top 1,000 on PyPI
pdfminer.sixpermissive · top 1,000 on PyPI
elastic-transportpermissive · top 1,000 on PyPI
lxmlpermissive · top 1,000 on PyPI