diff --git a/src/calibre/ebooks/pdf/render/from_html.py b/src/calibre/ebooks/pdf/render/from_html.py index 53c1341cb4..01aa178d7e 100644 --- a/src/calibre/ebooks/pdf/render/from_html.py +++ b/src/calibre/ebooks/pdf/render/from_html.py @@ -390,10 +390,10 @@ class PDFWriter(QObject): if self.paged_js is None: import uuid from calibre.utils.resources import compiled_coffeescript as cc - self.paged_js = cc('ebooks.oeb.display.utils') - self.paged_js += cc('ebooks.oeb.display.indexing') - self.paged_js += cc('ebooks.oeb.display.paged') - self.paged_js += cc('ebooks.oeb.display.mathjax') + self.paged_js = cc('ebooks.oeb.display.utils').decode('utf-8') + self.paged_js += cc('ebooks.oeb.display.indexing').decode('utf-8') + self.paged_js += cc('ebooks.oeb.display.paged').decode('utf-8') + self.paged_js += cc('ebooks.oeb.display.mathjax').decode('utf-8') if self.opts.pdf_hyphenate: self.paged_js += P('viewer/hyphenate/Hyphenator.js', data=True).decode('utf-8') hjs, self.hyphenate_lang = load_hyphenator_dicts({}, self.book_language) diff --git a/src/calibre/gui2/toc/location.py b/src/calibre/gui2/toc/location.py index f6fdd214bb..1ead67fa55 100644 --- a/src/calibre/gui2/toc/location.py +++ b/src/calibre/gui2/toc/location.py @@ -57,6 +57,8 @@ class Page(QWebPage): # {{{ from calibre.utils.resources import compiled_coffeescript self.js = compiled_coffeescript('ebooks.oeb.display.utils') self.js += compiled_coffeescript('ebooks.oeb.polish.choose') + if isinstance(self.js, bytes): + self.js = self.js.decode('utf-8') self.mainFrame().addToJavaScriptWindowObject("py_bridge", self) self.evaljs(self.js) # }}} diff --git a/src/calibre/gui2/tweak_book/preview.py b/src/calibre/gui2/tweak_book/preview.py index f66e58e9a1..c2e8633c86 100644 --- a/src/calibre/gui2/tweak_book/preview.py +++ b/src/calibre/gui2/tweak_book/preview.py @@ -286,6 +286,8 @@ class WebPage(QWebPage): self.js = compiled_coffeescript('ebooks.oeb.display.utils', dynamic=False) self.js += P('csscolorparser.js', data=True, allow_user_override=False) self.js += compiled_coffeescript('ebooks.oeb.polish.preview', dynamic=False) + if isinstance(self.js, bytes): + self.js = self.js.decode('utf-8') self._line_numbers = None mf = self.mainFrame() mf.addToJavaScriptWindowObject("py_bridge", self)