summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/fontbuildlib/builder.py5
-rw-r--r--misc/fontbuildlib/glyph.py1
2 files changed, 4 insertions, 2 deletions
diff --git a/misc/fontbuildlib/builder.py b/misc/fontbuildlib/builder.py
index 98166d5ac..b4a53df1b 100644
--- a/misc/fontbuildlib/builder.py
+++ b/misc/fontbuildlib/builder.py
@@ -115,9 +115,10 @@ class FontBuilder:
glyphsToRemoveOverlaps = set() # glyph objects
for ufo in masters:
for g in ufo:
- if g.components and not composedGlyphIsTrivial(g):
+ directives = findGlyphDirectives(g.note)
+ if 'decompose' in directives or (g.components and not composedGlyphIsTrivial(g)):
glyphNamesToDecompose.add(g.name)
- if 'removeoverlap' in findGlyphDirectives(g.note):
+ if 'removeoverlap' in directives:
if g.components and len(g.components) > 0:
glyphNamesToDecompose.add(g.name)
glyphsToRemoveOverlaps.add(g)
diff --git a/misc/fontbuildlib/glyph.py b/misc/fontbuildlib/glyph.py
index 734b881e0..8511aa190 100644
--- a/misc/fontbuildlib/glyph.py
+++ b/misc/fontbuildlib/glyph.py
@@ -16,6 +16,7 @@ from fontTools.pens.reverseContourPen import ReverseContourPen
#
knownDirectives = set([
'removeoverlap', # applies overlap removal (boolean union)
+ 'decompose', # decomposes components
])