1from fontTools.pens.basePen import BasePen 2 3 4__all__ = ["WxPen"] 5 6 7class WxPen(BasePen): 8 def __init__(self, glyphSet, path=None): 9 BasePen.__init__(self, glyphSet) 10 if path is None: 11 import wx 12 13 path = wx.GraphicsRenderer.GetDefaultRenderer().CreatePath() 14 self.path = path 15 16 def _moveTo(self, p): 17 self.path.MoveToPoint(*p) 18 19 def _lineTo(self, p): 20 self.path.AddLineToPoint(*p) 21 22 def _curveToOne(self, p1, p2, p3): 23 self.path.AddCurveToPoint(*p1 + p2 + p3) 24 25 def _qCurveToOne(self, p1, p2): 26 self.path.AddQuadCurveToPoint(*p1 + p2) 27 28 def _closePath(self): 29 self.path.CloseSubpath() 30