From 015d8265d276fc6c359074de99b5b999c7ca2f37 Mon Sep 17 00:00:00 2001 From: Cosimo Lupo Date: Sun, 27 Sep 2020 17:31:30 +0100 Subject: [PATCH] use pathops.simplify() and remember if original path direction pathops.simplify() returns a copy so we don't need to make a copy ourselves. 'clockwise' option is defined in https://github.com/fonttools/skia-pathops/pull/31 --- Lib/fontTools/ttLib/removeOverlaps.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Lib/fontTools/ttLib/removeOverlaps.py b/Lib/fontTools/ttLib/removeOverlaps.py index 5f0740871..28767c300 100644 --- a/Lib/fontTools/ttLib/removeOverlaps.py +++ b/Lib/fontTools/ttLib/removeOverlaps.py @@ -89,13 +89,10 @@ def removeOverlaps( else: path = skPathFromSimpleGlyph(glyphName, glyphSet) - # duplicate path - path2 = pathops.Path(path) - # remove overlaps - path2.simplify() + path2 = pathops.simplify(path, clockwise=path.clockwise) - # replace TTGlyph if simplified copy is different + # replace TTGlyph if simplified path is different if path2 != path: glyfTable[glyphName] = glyph = ttfGlyphFromSkPath(path2) # also ensure hmtx LSB == glyph.xMin so glyph origin is at x=0