From 9d69e1d4fa6e7d7b36a666eafd742f05ebb15c77 Mon Sep 17 00:00:00 2001 From: michieldwitte Date: Fri, 3 Aug 2018 17:34:59 +0200 Subject: [PATCH] left-alignment fix Fixes left-alignment when the "center_text" option is set to False --- barcode/writer.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/barcode/writer.py b/barcode/writer.py index 1d158fb..7012c22 100755 --- a/barcode/writer.py +++ b/barcode/writer.py @@ -25,6 +25,8 @@ def mm2px(mm, dpi=300): return (mm * dpi) / 25.4 +def px2mm(px, dpi=300): + return (px*25.4)/dpi def pt2mm(pt): return pt * 0.352777778 @@ -216,7 +218,9 @@ def render(self, code): # better center position for text xpos = bxs + ((bxe - bxs) / 2.0) else: - xpos = bxs + font = ImageFont.truetype(FONT, self.font_size * 2) + width, height = font.getsize(self.text) + xpos = bxs + px2mm(width // 2) self._callbacks['paint_text'](xpos, ypos) return self._callbacks['finish']()