| from __future__ import print_function, division, absolute_import |
| from fontTools.misc.py23 import * |
| from fontTools.pens.basePen import BasePen |
| |
| |
| __all__ = ["QtPen"] |
| |
| |
| class QtPen(BasePen): |
| |
| def __init__(self, glyphSet, path=None): |
| BasePen.__init__(self, glyphSet) |
| if path is None: |
| from PyQt5.QtGui import QPainterPath |
| path = QPainterPath() |
| self.path = path |
| |
| def _moveTo(self, p): |
| self.path.moveTo(*p) |
| |
| def _lineTo(self, p): |
| self.path.lineTo(*p) |
| |
| def _curveToOne(self, p1, p2, p3): |
| self.path.cubicTo(*p1+p2+p3) |
| |
| def _qCurveToOne(self, p1, p2): |
| self.path.quadTo(*p1+p2) |
| |
| def _closePath(self): |
| self.path.closeSubpath() |