Cosimo Lupo d33eaaf4ca
PointToSegmentPen: preserve duplicate last point
The PointToSegmentPen translates between PointPen and (Segment)Pen
protocol.

In the SegmentPen protocol, closed contours always imply a final 'lineTo'
segment from the last oncurve point to the starting point.
So the PointToSegmentPen omits the final 'lineTo' segment for closed
contours -- unless the option 'outputImpliedClosingLine' is True
(it is False by default, and defcon.Glyph.draw method initializes the
converter pen without this option).

However, if the last oncurve point is on a "line" segment and has same
coordinates as the starting point of a closed contour, the converter pen must
always output the closing 'lineTo' explicitly (regardless of the value of the
'outputImpliedClosingLine' option) in order to disambiguate this case from
the implied closing 'lineTo'.

If it doesn't do that, a duplicate 'line' point at the end of a closed
contour gets lost in the conversion.

See https://github.com/googlefonts/fontmake/issues/572.
2019-09-10 13:05:36 +02:00
..
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00
2019-08-09 12:20:13 +01:00