diff options
Diffstat (limited to 'Lib/fontTools/colorLib/unbuilder.py')
-rw-r--r-- | Lib/fontTools/colorLib/unbuilder.py | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/Lib/fontTools/colorLib/unbuilder.py b/Lib/fontTools/colorLib/unbuilder.py index 43582bde..03458907 100644 --- a/Lib/fontTools/colorLib/unbuilder.py +++ b/Lib/fontTools/colorLib/unbuilder.py @@ -2,11 +2,14 @@ from fontTools.ttLib.tables import otTables as ot from .table_builder import TableUnbuilder -def unbuildColrV1(layerV1List, baseGlyphV1List): - unbuilder = LayerV1ListUnbuilder(layerV1List.Paint) +def unbuildColrV1(layerList, baseGlyphList): + layers = [] + if layerList: + layers = layerList.Paint + unbuilder = LayerListUnbuilder(layers) return { rec.BaseGlyph: unbuilder.unbuildPaint(rec.Paint) - for rec in baseGlyphV1List.BaseGlyphV1Record + for rec in baseGlyphList.BaseGlyphPaintRecord } @@ -18,7 +21,7 @@ def _flatten(lst): yield el -class LayerV1ListUnbuilder: +class LayerListUnbuilder: def __init__(self, layers): self.layers = layers @@ -71,9 +74,8 @@ if __name__ == "__main__": sys.exit(f"error: No COLR table version=1 found in {fontfile}") colorGlyphs = unbuildColrV1( - colr.table.LayerV1List, - colr.table.BaseGlyphV1List, - ignoreVarIdx=not colr.table.VarStore, + colr.table.LayerList, + colr.table.BaseGlyphList, ) pprint(colorGlyphs) |