|||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
| Among other things this means you can use it free of charge.
[User documentation] and
are available at [Read the Docs].
FontTools requires [Python] 3.7
The package is listed in the Python Package Index (PyPI), so you can
install it with [pip]:
4.37.3 (released 2022-09-20)
- Fix arguments in calls to (glyf) glyph.draw() and drawPoints(), whereby
correctly passed down; this fix also exposed a second bug, where lsb and
tsb were not
set (#2824, #2825, adobe-type-tools/afdko#1560).
.37.2 (released 2022-09-15)
- [subset] Keep CPAL table and don't attempt to prune unused color indices
table is present even if COLR table was subsetted away; OT-SVG may be
CPAL table; for now we assume that's the case (#2814, #2815).
- [varLib.instancer] Downgrade GPOS/GSUB version if there are no more
after instancing (#2812).
- [subset] Added ``--no-lazy`` to optionally load fonts eagerly (mostly to
debugging of table lazy loading, no practical effects) (#2807).
- [varLib] Avoid building empty COLR.DeltaSetIndexMap with only identity
- [feaLib] Allow multiple value record types (by promoting to the most
within the same PairPos subtable; e.g. this allows variable and non
rules to share the same subtable. This also fixes a bug whereby some
would become unreachable while shapiong because of premature subtable
splitting (#2772, #2776).
- [feaLib] Speed up VarScalar by caching models for recurring master
- [feaLib] Optionally cythonize ``feaLib.lexer``, speeds up parsing FEA a
- [designspaceLib] Avoid crash when handling unbounded rule conditions
- [post] Don't crash if post legacy format 1 is malformed/improperly used
- [gvar] Don't be "lazy" (load all glyph variations up front) when
- [TTFont] Added normalizeLocation method to normalize a location dict from
font's defined axes space (also known as "user space") into the
space. It applies avar mapping if the font contains an avar table
- [TTVarGlyphSet] Support drawing glyph instances from CFF2 variable glyph
- [fontBuilder] Do not error when building cmap if there are zero code
- [varLib.plot] Added ability to plot a variation model and set of
values corresponding to the model's master locations into a pyplot figure
- [Snippets] Added ``statShape.py`` script to draw statistical shape of a
glyph as an
ellips (requires pycairo) (baecd88).
- [TTVarGlyphSet] implement drawPoints natively, avoiding going through
- [TTVarGlyphSet] Fixed bug whereby drawing a composite glyph multiple
components would shif; needed an extra copy (#2774).
4.37.1 (released 2022-08-24)
- [subset] Fixed regression introduced with v4.37.0 while subsetting the
Configuration Switches (platform-specific settings discarded)
PY310 ON Build using Python 3.10
PY39 OFF Build using Python 3.9
Package Dependencies by Type
Distribution File Information
a5bc5f5d48faa4085310b8ebd4c5d33bf27c6636c5f10a7de792510af2745a81 959967 fonttools-4.37.3-py3-none-any.whl
Ports that require python-fonttools:py310