ttLib: Read and write OpenType and TrueType fonts
Overview:
Most users of the fontTools
library will be using it to generate or manipulate
OpenType and TrueType fonts. (FontTools initially only supported TrueType fonts,
gaining OpenType support in version 2.0, and so uses the tt
prefix to refer to
both kinds of font. Because of this we will refer to both as “TrueType fonts”
unless we need to make a distinction.)
The main entry point for such operations is the fontTools.ttLib.ttFont
module, but other modules also provide useful functionality for handling OpenType
fonts:
ttLib
supports fonts with TrueType-flavored glyphs (i.e., with
a glyf
table), with PostScript-flavored glyphs (i.e., CFF
or
CFF2
tables), and with all of the glyph formats used for color fonts
(CBDT
, COLR
, sbix
, and SVG
). Static and variable fonts
are both supported.
Command-line utilities
ttLib
includes two modules that provide command-line operations:
Supporting modules
It also contains helper modules that enable lower-level functionality. In most cases, users will not need to access these modules directly:
- ttCollection: Access fonts within a TrueType/OpenType Collection
- ttGlyphSet: GlyphSets returned by a TTFont object
- macUtils: Access fonts in Mac file formats
- reorderGlyphs: Functions to reorder the glyphs in a font
- sfnt: Read and write the SFNT file format
- standardGlyphOrder: Interface with the Standard Glyph Order
- tables: Access TrueType/OpenType tables
- woff2: Read and write the WOFF2 font file format