single |
|GitHub Actions status| |PyPI Version| |Codecov| |Gitter Chat|
ufo2ft
======
ufo2ft ("UFO to FontTools") is a fork of
[ufo2fdk] whose goal is to
generate OpenType font binaries from UFOs without the FDK dependency.
The library provides two functions, compileOTF and compileTTF,
which work exactly the same way:
Color fonts
~~~~~~~~~~~
ufo2ft supports building COLR and CPAL tables.
If there is ``com.github.googlei18n.ufo2ft.colorPalettes`` key in font lib,
and
``com.github.googlei18n.ufo2ft.colorLayerMapping`` key in the font or
in any of the glyphs lib, then ufo2ft will build CPAL table from the color
palettes, and COLR table from the color layers.
colorPalettes is a array of palettes, each palette is a array of colors and
each color is a array of floats representing RGBA colors. For example:
.. code:: xml
com.github.googlei18n.ufo2ft.colorPalettes
0.26
0.0
0.23
1.0
0.86
0.73
0.28
1.0
colorLayerMapping is a array of color layers, each color layer is a array
of
layer name and palette color index. It is a per-glyph key, but if present
in
the font lib then it will be used for all glyphs that lack it. For example:
.. code:: xml
com.github.googlei18n.ufo2ft.colorLayerMapping
color.1
1
color.2
0
With these this key present, ufo2ft will copy the color layers into
individual
glyphs and setup COLR table.
Alternatively, if the color layers are already separate UFO glyphs, the
``com.github.googlei18n.ufo2ft.colorLayers`` font lib key can be used. It
uses
a table keyed by base glyph, and the value is an array of color layers,
each
color layer is an array of glyph name and palette color index. For example:
.. code:: xml
com.github.googlei18n.ufo2ft.colorLayers
alef-ar
alef-ar.color0
2
alefHamzaabove-ar
alefHamzaabove-ar.color0
1
alefHamzaabove-ar.color1
2
|