From 1387cfc39faacc4c145334cde89c0db343b9137e Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 22 Mar 2021 11:00:10 +0530 Subject: [PATCH] MOBI Output: Fix latest kindle firmware not displaying select publisher font option for calibre produced azw3 files. Fixes #1920613 [Kindle Firmware 5.13.5 changed embedded font management](https://bugs.launchpad.net/calibre/+bug/1920613) --- src/calibre/ebooks/mobi/writer8/exth.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/calibre/ebooks/mobi/writer8/exth.py b/src/calibre/ebooks/mobi/writer8/exth.py index cc8a9ca58c..d8f62a90a5 100644 --- a/src/calibre/ebooks/mobi/writer8/exth.py +++ b/src/calibre/ebooks/mobi/writer8/exth.py @@ -42,6 +42,7 @@ EXTH_CODES = { 'language': 524, 'primary_writing_mode': 525, 'page_progression_direction': 527, + 'override_kindle_fonts': 528, } COLLAPSE_RE = re.compile(r'[ \t\r\n\v]+') @@ -221,6 +222,10 @@ def build_exth(metadata, prefer_author_sort=False, is_periodical=False, exth.write(ppd) nrecs += 1 + exth.write(pack(b'>II', EXTH_CODES['override_kindle_fonts'], len(b'true') + 8)) + exth.write(b'true') + nrecs += 1 + exth = exth.getvalue() trail = len(exth) % 4 pad = b'\0' * (4 - trail) # Always pad w/ at least 1 byte