Calibre 使用教程之为电子书添加更换字体
Kindle 设备自 5.9.6 版本固件起已原生支持自定义字体,点击这里了解详情。
昨天有一位小伙伴在许愿区求助,刚入手一部 KPW2,固件版本是 5.6.1.0.2,但是想要更换电子书字体该怎么办?在这种无法通过越狱安装插件实现更换字体的需求还是有一个方法实现更换字体的,那就是使用 Calibre 把想要用的字体嵌入到电子书中。
这种方法不依赖设备,但是会增加电子书的大小,而且必须转换成 AZW3 格式或 MOBI 格式。如果输出格式选择的是 MOBI 格式,由于 Calibre 的默认输出设置是“old”类型,转换后的是不支持嵌入自定义字体的老版本 MOBI 格式,所以为了实现嵌入自定义字体,需要在“MOBI输出”中把“MOBI输出类型”选择为“both”或“new”,生成新版本的 MOBI 格式。
用 Calibre 为电子书嵌入字体方法很简单,如何转换电子书可以参见《Calibre使用教程之转换电子书格式》这篇文章,在转换的设置界面分别设置以下四项:
- 输出格式:AZW3 或 MOBI(注意选择MOBI文件类型为 both);
- 在“界面外观”的“内嵌字体”项选择想要嵌入的字体,如果列表中没有想要的字体,可以先去字体下载网站下载想要使用的字体文件,然后通过左下角的【添加字体】按钮添加进来;
- 勾选上“嵌入使用到的字体”;
- 选择“过滤样式信息”选项卡,勾选上“字体”。
- 设置完毕后点击“确定”开始转换。
转换完毕后,将 Kindle 通过 USB 数据线连接到电脑,将转换后的 AZW3 格式的电子书通过 Calibre 发送到 Kindle 或直接拷贝到 Kindle 中。打开电子书,选择字体,会发现多出来一个“出版方字体”这就是你刚才嵌入的字体了,选中它即可更换这本电子书的字体了。
转换后的 AZW3 可以直接拷贝到 Kindle 中阅读,但无法推送到云端。由于推送不支持嵌入字体,所以即便转换成 MOBI 格式也无济于事。另外,在嵌入微软雅黑字体时,可能会出现无法转换的错误,暂无解决办法,请选用其他相似字体如信黑、冬青黑、旗黑替代。
© 「书伴」原创文章,转载请注明出处及原文链接:https://bookfere.com/post/91.html
“转换电子书格式”相关阅读
- Calibre使用教程之为电子书添加或修改封面
- Calibre 使用教程之优化电子书的排版
- Calibre 常用命令行工具详解之 ebook-convert
- KindleGen:亚马逊官方 Kindle 电子书格式转换工具
- Kindle Comic Creator:亚马逊官方漫画转换工具
- 把 TXT 文档转换成带目录的 MOBI 格式电子书
- 如何把 KFX 格式转换成 MOBI 等其它电子书格式
- 如何把 Kindle 电子书的横排文字改成竖排
- 亚马逊 Kindle Convert:纸质书无损转换电子书
- 如何把 Kindle 电子书转换成增强型排版的 KFX 格式
- Kindle Comic Converter:最简单的漫画转换工具
- EasyPub:把 TXT 文档转成带目录的 MOBI 格式
- 乐书:在线 Kindle 电子书制作和转换工具
- 如何将 AZW3 格式无损转换为 EPUB 格式并保持原有排版
- Calibre 使用教程之电子书繁体字转简体字
KPW4 5.14.2,有一本 Kobo 正版电子书转格式(EPUB ->AZW3)后,只能显示黑体,其他几种字体切换无效果,在我嵌入微软雅黑后,黑体、宋体、楷体、圆体全部可以用了,出版方字体则是它原书的黑体。供参考。
更新到5.13.5后,出版方字体就消失了,之前做的好多嵌入字体的书不知怎么办是好,各位书友有解决应对之法吗?
最近嵌入字体总是出错,不知道为何emm
calibre, version 4.15.0 (win32, embedded-python: True)
转换错误: 失败: 转换书籍 第 1 本,共 1 本 (《—-》2020年1期)
转换书籍 第 1 本,共 1 本 (《—–》2020年1期)
C:\Program Files\Calibre2\\app\pylib.zip\dateutil\parser\_parser.py:1177: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode – interpreting them as being unequal
Conversion options changed from defaults:
insert_blank_line: True
remove_paragraph_spacing: True
cover: u’C:\\Users\\DELL\\AppData\\Local\\Temp\\calibre_yul8op\\qep5wu.jpeg’
read_metadata_from_opf: u’C:\\Users\\DELL\\AppData\\Local\\Temp\\calibre_yul8op\\nynn8i.opf’
verbose: 2
output_profile: u’kindle_pw3′
filter_css: u’,font-family’
embed_font_family: u’TsangerJinKai01-27533 W05′
Resolved conversion options
calibre version: 4.15.0
{‘asciiize’: False,
‘author_sort’: None,
‘authors’: None,
‘base_font_size’: 0.0,
‘book_producer’: None,
‘change_justification’: u’original’,
‘chapter’: u”//*[((name()=’h1′ or name()=’h2′) and re:test(., ‘\\s*((chapter|book|section|part)\\s+)|((prolog|prologue|epilogue)(\\s+|$))’, ‘i’)) or @class = ‘chapter’]”,
‘chapter_mark’: u’pagebreak’,
‘comments’: None,
‘cover’: u’C:\\Users\\DELL\\AppData\\Local\\Temp\\calibre_yul8op\\qep5wu.jpeg’,
‘debug_pipeline’: None,
‘dehyphenate’: True,
‘delete_blank_paragraphs’: True,
‘disable_font_rescaling’: False,
‘dont_compress’: False,
‘duplicate_links_in_toc’: False,
’embed_all_fonts’: False,
’embed_font_family’: u’TsangerJinKai01-27533 W05′,
‘enable_heuristics’: False,
‘expand_css’: False,
‘extra_css’: None,
‘extract_to’: None,
‘filter_css’: u’,font-family’,
‘fix_indents’: True,
‘font_size_mapping’: None,
‘format_scene_breaks’: True,
‘html_unwrap_factor’: 0.4,
‘input_encoding’: None,
‘input_profile’: ,
‘insert_blank_line’: True,
‘insert_blank_line_size’: 0.5,
‘insert_metadata’: False,
‘isbn’: None,
‘italicize_common_cases’: True,
‘keep_ligatures’: False,
‘language’: None,
‘level1_toc’: None,
‘level2_toc’: None,
‘level3_toc’: None,
‘line_height’: 0.0,
‘linearize_tables’: False,
‘margin_bottom’: 5.0,
‘margin_left’: 5.0,
‘margin_right’: 5.0,
‘margin_top’: 5.0,
‘markup_chapter_headings’: True,
‘max_toc_links’: 50,
‘minimum_line_height’: 120.0,
‘mobi_toc_at_start’: False,
‘no_chapters_in_toc’: False,
‘no_inline_navbars’: False,
‘no_inline_toc’: False,
‘output_profile’: ,
‘page_breaks_before’: u”//*[name()=’h1′ or name()=’h2′]”,
‘prefer_author_sort’: False,
‘prefer_metadata_cover’: False,
‘pretty_print’: False,
‘pubdate’: None,
‘publisher’: None,
‘rating’: None,
‘read_metadata_from_opf’: u’C:\\Users\\DELL\\AppData\\Local\\Temp\\calibre_yul8op\\nynn8i.opf’,
‘remove_fake_margins’: True,
‘remove_first_image’: False,
‘remove_paragraph_spacing’: True,
‘remove_paragraph_spacing_indent_size’: 1.5,
‘renumber_headings’: True,
‘replace_scene_breaks’: u”,
‘search_replace’: ‘[]’,
‘series’: None,
‘series_index’: None,
‘share_not_sync’: False,
‘smarten_punctuation’: False,
‘sr1_replace’: None,
‘sr1_search’: None,
‘sr2_replace’: None,
‘sr2_search’: None,
‘sr3_replace’: None,
‘sr3_search’: None,
‘start_reading_at’: None,
‘subset_embedded_fonts’: False,
‘tags’: None,
‘timestamp’: None,
‘title’: None,
‘title_sort’: None,
‘toc_filter’: None,
‘toc_threshold’: 6,
‘toc_title’: None,
‘transform_css_rules’: ‘[]’,
‘unsmarten_punctuation’: False,
‘unwrap_lines’: True,
‘use_auto_toc’: False,
‘verbose’: 2}
InputFormatPlugin: MOBI Input running
on C:\Users\DELL\AppData\Local\Temp\calibre_yul8op\fgrhpv.mobi
Found KF8 MOBI of type u’standalone’
Extracting text…
Parsing all content…
Parsing text/part0014.html …
Parsing text/part0008.html …
Parsing text/part0002.html …
Parsing text/part0020.html …
Parsing text/part0017.html …
Parsing text/part0005.html …
Parsing text/part0012.html …
Parsing text/part0000.html …
Parsing text/part0003.html …
Parsing text/part0011.html …
Parsing text/part0001.html …
Parsing styles/0001.css …
Parsing text/part0018.html …
Parsing text/part0015.html …
Parsing text/part0004.html …
Parsing text/part0016.html …
Parsing text/part0009.html …
Parsing text/part0019.html …
Parsing text/part0013.html …
Parsing text/part0007.html …
Parsing styles/0002.css …
Parsing text/part0010.html …
Parsing text/part0006.html …
Reading TOC from NCX…
Merging user specified metadata…
Detecting structure…
Flattening CSS and remapping font sizes…
Filtering CSS properties: , font-family
Python function terminated unexpectedly
‘NoneType’ object has no attribute ‘decode’ (Error Code: 1)
Traceback (most recent call last):
File “site.py”, line 114, in main
File “site.py”, line 88, in run_entry_point
File “site-packages\calibre\utils\ipc\worker.py”, line 209, in main
File “site-packages\calibre\gui2\convert\gui_conversion.py”, line 43, in gui_convert_override
File “site-packages\calibre\gui2\convert\gui_conversion.py”, line 28, in gui_convert
File “site-packages\calibre\ebooks\conversion\plumber.py”, line 1232, in run
File “site-packages\calibre\ebooks\oeb\transforms\flatcss.py”, line 196, in __call__
File “site-packages\calibre\ebooks\oeb\transforms\flatcss.py”, line 246, in get_embed_font_info
File “site-packages\calibre\utils\filenames.py”, line 37, in ascii_filename
File “site-packages\calibre\utils\filenames.py”, line 28, in ascii_text
AttributeError: ‘NoneType’ object has no attribute ‘decode’
字体名或字体信息中有什么特殊字符吗?有没有更换其它字体测试一下?
您好,我的电子书中有批注以不同字体出现,请问有没有办法将所有批注/所有正文字体分别更换掉呢?感谢!
首先你需要知道两种不同字体所在标签的 class 或 id 名,然后用 Calibre 转换时,在“界面外观”的“Styling”中找到“Extra CSS”,在这里面分别为两种字体的标签编写 CSS 样式指定不同的字体。
或者你可以可以用 KindleUnpack 把电子书拆解成源代码,然后编辑 CSS 文件,修改其中不同字体所在的标签 class 或 id 所引用的样式来指定不同的字体。
好的,我学习1下!感谢!
我折腾了一早上
终于把字体添加到calibre了
然后开始转换 第一本转换字体成功 我在calibre里预览显示的都是我自己添加的字体 我很开心 发送到设备
然而打开kindle发现没有出版方字体这个选项
我确定我设置的是azw3也设置了过滤字体
这不是高潮
高潮是我转换的第二本书全是乱码
都是同一个字体为什么一本正常一本乱码
我现在真的崩溃了求大神帮帮忙
您好!我有一个问题。我有一本书,里面的文字有大有小,我想把它们调成大小一致。应该怎么操作?
你好,不知道您这里还能不能看到了。。我按照这个办法转换后,Kindle打开调整为出版方字体后,就会显示出现错误,如果您从亚马逊购买了此内容,请从设备删除,并从云端重新下载。。
哎,弄了几次都无解,用DeDRM插件处理了,还是无解。
酗酒的上帝 您好。不知道你选择的是什么输出格式。转换时建议选择 azw3 格式,如果选择 mobi 格式并且模式选择 new 可能就会出现你遇到的问题。
我也遇到了这样的错误,而且我是选择输出格式为 azw3 的,仍然显示出现错误。
比如阿修罗三部曲中亚破解,就会出现选择输出格式为 azw3,转换字体后,kindle选择出版社字体,就出现“错误,如果您从亚马逊购买了此内容,请从设备删除,并从云端重新下载。” 如果用自带字体就不会出现以上情况
添加 汉仪家书简 字体时报了这个异常。是否遇到过类似情况?可有解决办法?
calibre, version 2.75.1
错误: 未处理的异常: TypeError:Not a unicode string
calibre 2.75.1 [64bit] embedded-python: True is64bit: True
Windows-8-6.2.9200 Windows (’64bit’, ‘WindowsPE’)
(‘Windows’, ‘8’, ‘6.2.9200’)
Python 2.7.9
Windows: (‘8’, ‘6.2.9200’, ”, ‘Multiprocessor Free’)
Traceback (most recent call last):
File “site-packages\calibre\gui2\font_family_chooser.py”, line 306, in add_fonts
File “”, line 5, in lower
TypeError: Not a unicode string
可能是因为微软雅黑是ttc文件,也就是一套的字体,要用fontforge等软件拆成一个个ttf才行