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
licence `__.
| 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.8
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.53.1 (released 2024-07-05)
----------------------------
- [feaLib] Improve the sharing of inline chained lookups (#3559)
- [otlLib] Correct the calculation of OS/2.usMaxContext with reversed
chaining contextual single substitutions (#3569)
- [misc.visitor] Visitors search the inheritance chain of objects they are
visiting (#3581)
4.53.0 (released 2024-05-31)
----------------------------
- [ttLib.removeOverlaps] Support CFF table to aid in downconverting CFF2
fonts (#3528)
- [avar] Fix crash when accessing not-yet-existing attribute (#3550)
- [docs] Add buildMathTable to otlLib.builder documentation (#3540)
- [feaLib] Allow UTF-8 with BOM when reading features (#3495)
- [SVGPathPen] Revert rounding coordinates to two decimal places by default
(#3543)
- [varLib.instancer] Refix output filename decision-making (#3545, #3544,
#3548)
4.52.4 (released 2024-05-27)
----------------------------
- [varLib.cff] Restore and deprecate convertCFFtoCFF2 that was removed in
4.52.0
release as it is used by downstream projects (#3535).
4.52.3 (released 2024-05-27)
----------------------------
- Fixed a small syntax error in the reStructuredText-formatted NEWS.rst
file
which caused the upload to PyPI to fail for 4.52.2. No other code
changes.
4.52.2 (released 2024-05-27)
----------------------------
- [varLib.interpolatable] Ensure that scipy/numpy output is
JSON-serializable
(#3522, #3526).
- [housekeeping] Regenerate table lists, to fix pyinstaller packaging of
the new
VARC table (#3531, #3529).
- [cffLib] Make CFFToCFF2 and CFF2ToCFF more robust (#3521, #3525).
4.52.1 (released 2024-05-24)
----------------------------
- Fixed a small syntax error in the reStructuredText-formatted NEWS.rst
file
which caused the upload to PyPI to fail for 4.52.0. No other code
changes.
4.52.0 (released 2024-05-24)
----------------------------
- Added support for the new VARC (Variable Composite) table that is being
proposed to OpenType spec (#3395). For more info:
https://github.com/harfbuzz/boring-expansion-spec/blob/main/VARC.md
- [ttLib.__main__] Fixed decompiling all tables (90fed08).
- [feaLib] Don't reference the same lookup index multiple times within the
same
feature record, it is only applied once anyway (#3520).
- [cffLib] Moved methods to desubroutinize, remove hints and unused
subroutines
from subset module to cffLib (#3517).
|