• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1from fontTools.pens.basePen import BasePen
2
3
4__all__ = ["QtPen"]
5
6
7class QtPen(BasePen):
8
9	def __init__(self, glyphSet, path=None):
10		BasePen.__init__(self, glyphSet)
11		if path is None:
12			from PyQt5.QtGui import QPainterPath
13			path = QPainterPath()
14		self.path = path
15
16	def _moveTo(self, p):
17		self.path.moveTo(*p)
18
19	def _lineTo(self, p):
20		self.path.lineTo(*p)
21
22	def _curveToOne(self, p1, p2, p3):
23		self.path.cubicTo(*p1, *p2, *p3)
24
25	def _qCurveToOne(self, p1, p2):
26		self.path.quadTo(*p1, *p2)
27
28	def _closePath(self):
29		self.path.closeSubpath()
30