summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@diac24.net>2013-12-15 23:41:57 +0100
committerDavid Lamparter <equinox@diac24.net>2013-12-15 23:41:57 +0100
commitd29a09bee752791c977088a2de7dd09e5f436116 (patch)
treeb835897574067523059dc44fbc7ef594b87bf01b
parent1e5074b52e4bb29c9cc1574929d9e8c681b2ae0e (diff)
add border around QR codes
-rw-r--r--ptlayout.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/ptlayout.py b/ptlayout.py
index 2ead50c..07266b3 100644
--- a/ptlayout.py
+++ b/ptlayout.py
@@ -83,6 +83,7 @@ class PTLQRCode(PTLayoutElem):
super(PTLQRCode, self).__init__()
self.qrcontent = ''
self.hborder = 4
+ self.vborder = 4
self.invert = False
def properties(self):
@@ -97,16 +98,16 @@ class PTLQRCode(PTLayoutElem):
return self._render(cctx, False, h)
def _render(self, cctx, sizeonly, h):
- qr = qrcode.QRCode(border = 0)
+ qr = qrcode.QRCode(border = 0, error_correction = qrcode.ERROR_CORRECT_L)
qr.add_data(self.qrcontent)
qr.make(fit = True)
qm = qr.get_matrix()
qmlen = len(qm)
- bpp = h / qmlen
- if sizeonly: return (bpp * qmlen + self.hborder * 2, bpp * qmlen)
+ bpp = (h - self.vborder) / qmlen
+ if sizeonly: return (bpp * qmlen + self.hborder * 2, bpp * qmlen + self.vborder * 2)
if self.invert:
- cctx.rectangle(0, 0, bpp * qmlen + self.hborder * 2, h)
+ cctx.rectangle(0, 0, bpp * qmlen + self.hborder * 2, h + self.vborder * 2)
cctx.fill()
cctx.set_source_rgba(1.0, 1.0, 1.0, 0.0)