From 8ed8e466598a74855582ec0a44ca018a82fcb348 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20T=C3=A9tar?= Date: Sat, 20 Sep 2014 10:11:28 +0200 Subject: [PATCH] pens: add a Qt pen --- Lib/fontTools/pens/qtPen.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Lib/fontTools/pens/qtPen.py diff --git a/Lib/fontTools/pens/qtPen.py b/Lib/fontTools/pens/qtPen.py new file mode 100644 index 000000000..2267dc7d8 --- /dev/null +++ b/Lib/fontTools/pens/qtPen.py @@ -0,0 +1,28 @@ +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 _closePath(self): + self.path.closeSubpath()