当前位置:首页 > 群晖 > Calibre > 正文内容

如何利用字体将简体 Kindle 电子书内容转为繁体

zyhwxm3年前 (2022-02-11)Calibre387

相比繁体转简体,简体转繁体存在较多的一简对多繁的情况,比如简体字""同时对应繁体字的""""""对应"""",因此在转换时需要考虑上下文,无法像《Calibre 使用教程之电子书繁体字转简体字》这篇文章介绍繁转简的方法那样,通过简单的转换规则将内容以字为单位进行转换。

本文介绍了一种解决方案,可以尽可能精准地将简体字词转换成对应的繁体字词。实现也很简单,只需要下载一个字体,就可以通过 Kindle 自定义字体功能功能直接将简体字内容转换成繁体,如果你的 Kindle 固件不支持自定义字体,也可以将字体嵌入到 Kindle 电子书中达到同样的效果。

本文所介绍的简转繁方案相关知识均来源于网友 Ayaka Mikazuki 的两篇文章《正確實現簡轉繁字型》和《繁简中文转换概说》,本文的示例字体也是取自其开源项目"繁媛明朝""繁媛黑體"

本文提供的方法仅适用于 KFX 格式电子书。对于从亚马逊 Kindle 电子书商店购买的电子书,一般情况下都是 KFX 格式;对于自制的电子书需要转换成 KFX 格式才行;对于推送到个人文档服务的电子书,由于亚马逊的个人文档服务器不会将推送的文档转换成 KFX 格式,所以不支持本文提供的方法。

一、快速体验

为快速体验利用字体实现简繁转换,这里会用到 Kindle 的自定义字体功能,请确保你的 Kindle 设备型号发布时间不晚于 KPW2,固件版本不低于 5.9.6。如这些条件已满足,即可按照如下所示步骤操作:

首先,根据下面提供的链接,选择你想要的字体风格,将字体文件压缩包下载到本地:

注意,解压缩后会看到多个不同字重(字形笔画粗细)的字体文件,请根据自己的需要选择。

然后,用 USB 数据线将 Kindle 连接到电脑,将字体文件拷贝到 Kindle 根目录下的 fonts 文件夹中。

最后,断开 Kindle 与电脑的连接。打开一本简体中文电子书,点击屏幕顶部调出快捷操作面板,点击【页面显示字体和页面设置】,在弹出的字体设置界面中选择"繁媛明朝"(或"繁媛黑體")。

如此,电子书的简体中文内容便可自动切换成繁体中文。

二、实现原理

以上两款简繁转换字体"繁媛明朝""繁媛黑體"是基于开源字体"源樣明體""源樣黑體"制作的,实现方法结合了 OpenCC 对简繁转换的解决方案,以及 OpenType 字体的字形替换(GSUB)特性。

如果上面提供的字体不能满足你的需求,可以自己动手制作基于某款字体简繁转换字体,方法可以参考"繁媛明朝"字体项目提供的两个构建脚本 build.yml  build.sh,以及项目作者提供的简转繁字体生成工具 OpenCCFontGenerator。相关技术细节可参考《正確實現簡轉繁字型》这篇文章。

三、已知问题

虽然本文介绍的方案可以尽可能精准的将简体中文词汇转换成繁体中文词汇,但是仍然会存在一些问题,这些问题可以参考《正確實現簡轉繁字型》一文中有关局限性说明:包括句子本身存在歧义、OpenCC 算法的局限性、OpenCC 词库的局限性以及 OpenType 的局限性。

此外,如果电子书在 CSS 中为某些内容(如小标题、引用内容等)指定了字体,那么 Kindle 会优先使用指定字体,导致自定义字体无法应用到某些文本,从而出现没能成功简转繁的情况。


版权声明:本文版权归原作者所有,仅供技术参考;

                 若有违反您个人权益,请留言反馈删除相关信息;


本文链接:http://zyh-c.myds.me:8086/post/36.html

相关文章

群晖NAS中calibre-web的豆瓣元数据获取

群晖NAS中calibre-web的豆瓣元数据获取

最近在NAS系统中使用Docker容器calibre-web搭建了自己的个人图书馆,在获取图书元数据的时候发现豆瓣源API已经失效了,网上提供的apikey都已经不能用了。豆瓣网页上基本也是防爬虫的,只有少部分网页没有做防爬处理,不过也是有...

Calibre 使用教程之邮件一键推送电子书

Calibre 使用教程之邮件一键推送电子书

Kindle 伴侣在之前曾经写过一个教程《通过电子邮箱附件推送文档到Kindle》,内容是手动通过电子邮箱推送电子书到【我的内容】,下面介绍的用 Calibre 推送的方法可以使推送过程更加简化。 目录: 一、推送设置及推送步骤...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。