From 20d79925a49c781dd515c733cbfd1ccd389b6e76 Mon Sep 17 00:00:00 2001 From: liguobao Date: Sat, 26 May 2018 21:55:44 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=82=E9=85=8D:python3.6.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- img2html/converter.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/img2html/converter.py b/img2html/converter.py index 046758c..7d4c8ee 100644 --- a/img2html/converter.py +++ b/img2html/converter.py @@ -14,6 +14,10 @@ RenderItem = namedtuple('RenderItem', ['color', 'char']) RenderGroup = list HTMLImage = list +try: + xrange +except NameError: + xrange = range TEMPLATE = ''' @@ -53,7 +57,10 @@ def _progress_callback(percent): lca = getattr(_progress_callback, '_last_call_at', 0) if time.time() - lca > 0.1: _progress_callback._last_call_at = time.time() - sys.stdout.write('\r{} progress: {:.2f}%'.format(_c.next(), percent)) + try: + sys.stdout.write('\r{} progress: {:.2f}%'.format(_c.next(), percent)) + except: + sys.stdout.write('\r{} progress: {:.2f}%'.format(next(_c), percent)) sys.stdout.flush() @@ -70,7 +77,10 @@ def __init__(self, self.title = title self.font_family = font_family if isinstance(char, str): - char = char.decode('utf-8') + try: + char = char.decode('utf-8') + except: + char = char.encode('utf-8').decode("utf-8") self.char = cycle(char) self._prg_cb = progress_callback or _progress_callback @@ -97,7 +107,10 @@ def convert(self, source): pixels.append(Pixel(*image.getpixel(point)[:3])) average = self.get_average(pixels=pixels) color = self.rgb2hex(average) - render_item = RenderItem(color=color, char=self.char.next()) + try: + render_item = RenderItem(color=color, char=self.char.next()) + except: + render_item = RenderItem(color=color, char=next(self.char)) render_group.append(render_item) progress += step