[ttGlyphPen] rename option to 'handleOverflowingTransforms'

This commit is contained in:
Cosimo Lupo 2018-03-01 20:17:48 +00:00
parent 6ce8eec89c
commit 4173315f09
No known key found for this signature in database
GPG Key ID: 59D54DB0C9976482
2 changed files with 7 additions and 7 deletions

View File

@ -20,9 +20,9 @@ MAX_F2DOT14 = 0x7FFF / (1 << 14)
class TTGlyphPen(AbstractPen):
"""Pen used for drawing to a TrueType glyph."""
def __init__(self, glyphSet, decomposeOverflowingTransform=True):
def __init__(self, glyphSet, handleOverflowingTransforms=True):
self.glyphSet = glyphSet
self.decomposeOverflowingTransform = decomposeOverflowingTransform
self.handleOverflowingTransforms = handleOverflowingTransforms
self.init()
def init(self):
@ -88,7 +88,7 @@ class TTGlyphPen(AbstractPen):
def glyph(self, componentFlags=0x4):
assert self._isClosed(), "Didn't close last contour."
if self.decomposeOverflowingTransform:
if self.handleOverflowingTransforms:
# we can't encode transform values > 2 or < -2 in F2Dot14,
# so we must decompose the glyph if any transform exceeds these
overflowing = any(s > 2 or s < -2
@ -98,7 +98,7 @@ class TTGlyphPen(AbstractPen):
components = []
for glyphName, transformation in self.components:
if (self.points or
(self.decomposeOverflowingTransform and overflowing)):
(self.handleOverflowingTransforms and overflowing)):
# can't have both coordinates and components, so decompose
tpen = TransformPen(self, transformation)
self.glyphSet[glyphName].draw(tpen)
@ -109,7 +109,7 @@ class TTGlyphPen(AbstractPen):
component.x, component.y = transformation[4:]
transformation = transformation[:4]
if transformation != (1, 0, 0, 1):
if (self.decomposeOverflowingTransform and
if (self.handleOverflowingTransforms and
any(MAX_F2DOT14 < s <= 2 for s in transformation)):
# clamp values ~= +2.0 so we can keep the component
transformation = tuple(MAX_F2DOT14 if MAX_F2DOT14 < s <= 2

View File

@ -218,10 +218,10 @@ class TTGlyphPenTest(TestCase):
self.assertEqual(expectedGlyph, compositeGlyph)
def test_no_decompose_overflowing_transform(self):
def test_no_handle_overflowing_transform(self):
componentName = 'a'
glyphSet = {}
pen = TTGlyphPen(glyphSet, decomposeOverflowingTransform=False)
pen = TTGlyphPen(glyphSet, handleOverflowingTransforms=False)
pen.moveTo((0, 0))
pen.lineTo((0, 1))