python-fonttools
Port variant v14
Summary Tools to manipulate font files (3.14)
Package version 4.63.0
Homepage https://github.com/fonttools/fonttools
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v13
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 22 MAY 2026, 14:41:05 UTC
Port created 04 JAN 2020, 01:03:23 UTC
Subpackage Descriptions
single |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 `__. | Among other things this means you can use it free of charge. [User documentation] and [developer documentation] are available at [Read the Docs]. Installation ~~~~~~~~~~~~ FontTools requires [Python] 3.10 or later. We try to follow the same schedule of minimum Python version support as NumPy (see [NEP 29]). The package is listed in the Python Package Index (PyPI), so you can install it with [pip]: Changelog ~~~~~~~~~ 4.63.0 (released 2026-05-14) ---------------------------- - [ttLib] Add support for Apple Color Emoji bgcl table (#4065). - [ttLib] Add support for IFT and IFTX tables (Incremental Font Transfer, PatchMapFormat2) (#4070, #4072). - [otData] Introduce FieldSpec dataclass for OpenType table schema definitions, replacing raw tuples in ``otData.py`` (#4076). - [Feat] Show name table strings as comments next to label IDs in TTX output, matching the convention used by fvar, STAT, trak (#4089). - [cu2qu] Fix Cython complex-division rounding difference in split_cubic_into_three that could cause ±1 off-curve coordinate shifts (#3928, #4083). - [designspaceLib] Fix map_backward for many-to-one (flat-segment) axis maps that silently dropped entries via dict comprehension (googlefonts/ufo2ft#978, #4085). - [OS/2] Fix setUnicodeRanges to accept reserved bits 123-127, restoring round-trip with getUnicodeRanges and fixing recalcUnicodeRanges crash in the subsetter (#4087, #4088). - [cython] Declare Cython extensions as free-threading compatible on Python 3.13+, so that importing them on free-threaded Python no longer re-enables the GIL (#4073, #4090). 4.62.1 (released 2026-03-13) ---------------------------- - [feaLib] Extend contextual rule merging to all rule types: single subst, GSUB/GPOS named lookups, ignore rules, and chained alternate subst (#4061). 4.62.0 (released 2026-03-09) ---------------------------- - [diff] Add new fonttools diff command for comparing font files, imported from the fdiff project and heavily reworked (#1190, #4007, #4009, #4011, #4013, #4019). - [feaLib] Fix VariableScalar interpolation bug with non-linear avar mappings. Also decouple VariableScalar from compiled fonts, allowing it to work with designspace data before compilation (#3938, #4054). - [feaLib] Fix VariableScalar axis ordering and iterative delta rounding to match fontc behavior (#4053). - [feaLib] Merge chained multi subst rules with same context into a single subtable instead of emitting one subtable per glyph (#4016, #4058). - [feaLib] Pass location to ConditionsetStatement to fix glyphsLib round-tripping (fontra/fontra-glyphs#130, #4057). - [feaLib] Write 0xFFFF instead of 0 for missing nameIDs in cv feature params (#4010, #4012). - [cmap] Fix ``CmapSubtable.__lt__() TypeError`` on Python 3 when subtables share the same encoding record, and add compile-time validation for unique encoding records (#4035, #4055). - [svgLib] Skip non-element XML nodes (comments, processing instructions) when drawing SVG paths (#4042, #4043). - [glifLib] Fix regression reading glyph outlines when ``glyphObject=None`` (#4030, #4031).
Configuration Switches (platform-specific settings discarded)
PY313 OFF Build using Python 3.13 PY314 ON Build using Python 3.14
Package Dependencies by Type
Build (only) python314:dev:std
python-pip:single:v14
autoselect-python:single:std
Build and Runtime python314:primary:std
Download groups
main mirror://PYPIWHL/2c/47/c99d5268f354002ce80f8d029cd9d7d872969da1de8b93d32de4dc56d6f4
Distribution File Information
445af2eab030a16b9171ea8bdda7ebf7d96bda2df88ee182a464252f6e05e20d 1164562 python-src/fonttools-4.63.0-py3-none-any.whl
Ports that require python-fonttools:v14
python-booleanOperations:v14 Boolean operations on paths (3.14)
python-cffsubr:v14 CFF subroutinizer based on AFDKO tx tool (3.14)
python-cu2qu:v14 Cubic-to-quadratic bezier curve conversion (3.14)
python-fontMath:v14 Perform math operations on font data (3.14)
python-statmake:v14 Applies STAT Stylespace to a variable font (3.14)
python-ufo2ft:v14 Bridge between UFOs and FontTools (3.14)
python-ufoLib2:v14 UfoLib2 is a UFO font processing library (3.14)