如何为 Kindle 电子书添加嵌入多种自定义字体

Kindle 设备自 5.9.6    本地固件支持自定义字体,点击这里了解详情。

有些小伙伴越狱它是为了更换电子书的字体,但小边认为,与系统级的字体更换相比,最好将字体嵌入电子书中,即使这会导致电子书的体积增加,视觉效果是值得的。

之前 Kindle 伙伴曾经写过一篇文章《Calibre 使用教程为电子书添加更换字体》介绍用 Calibre 将字体嵌入电子书的方法,但这种方法的一个缺点是只能嵌入一个自定义字体。你能在电子书中添加多种字体来丰富排版吗?当然,下面的文章将讨论详细的实现方法。

1、嵌入多种字体效果

请先看下面嵌入多种字体的电子书截图(点击图片查看大图)。这本电子书嵌入了六种字体,包括2 简体字体、2 繁体字体和2 英文字体。当然,你也可以下载 Kindle 伙伴制作的嵌入多种字体测试.mobi这本电子书,放在 Kindle 检查实际效果。

muti-fonts

当然,上述示例中的字体都是夸张的艺术字体,以便于观看效果。在实际应用中,可能是更换不同类型的宋体、明体或黑体,更适合阅读,或同一字体的不同字重,使电子书更具阅读美感。

2、如何嵌入多种字体

Kindle 电子书的内容结构和外观风格是由 HTML 和 CSS 构成,让 HTML 自定义字体显示在页面上CSS3 的一个特点,所以只有 Kindle Format 8 (KF8) 支持标准电子书 CSS3 的特点。同时,只支持 KF8 标准的 Kindle 阅读器可以看到效果。

场景 1.制作电子书时嵌入字体

如何从零开始制作符合亚马逊 KF8 请参考标准电子书《遵循亚马逊标准!Kindle 电子书专业制作教程》和《KF8 格式电子书支持 HTML 标签和 CSS 属性》这两篇文章。

下面以“嵌入多种字体测试.mobi以这本电子书为例,分析嵌入多种自定义字体的相关代码。

本电子书的源文件结构如下所示(下载源文件嵌入多种字体测试.zip”):

├──── 嵌入多种字体测试.opf
├──── fonts
               ├──── font1.ttf
               ├──── font2.ttc
               ├──── font3.ttf
               ├──── font4.ttf
               ├──── font5.ttf
               ├──── font6.ttf
├──── images
├──── style.css
├──── content.html

制作时,先在源文件目录中新建 fonts    文件夹,准备好使用的字体(格式可以是 otf、ttf、ttc 等)重命名(建议使用英文名)。如上述结构所示,我添加了六个字体。

编辑风格表 style.css    文件,在样式表中定义这些字体:

/* 定义字体 1 */
@font-face {
	font-family: 'font1-define';
	src: url(fonts/font1.ttf);
}
/* 定义字体 2 */
@font-face {
	font-family: "font2-define";
	src: url(fonts/font2.ttc);
}
/* 定义字体 3 */
@font-face {
	font-family: "font3-define";
	src: url(fonts/font3.ttf);
}
/* 定义字体 4 */
@font-face {
	font-family: "font4-define";
	src: url(fonts/font4.ttf);
}
/* 定义字体 5 */
@font-face {
	font-family: "font5-define";
	src: url(fonts/font5.ttf);
}
/* 定义字体 6 */
@font-face {
	font-family: "font6-define";
	src: url(fonts/font6.ttf);
}

如上述代码所示。@font-face { ... }    代表定义了两个必填参数的字体:

       

  • font-family: 'font1';    表示字体的引用名称为font1这个名字可以随意填写,建议用英语;
  •    

  • src: url(fonts/font1.ttf);    是指定字体的相对路径,这里引用 font 文件夹font1.ttf”。

在 CSS 文件中定义字体后,可以查看 HTML 文件中需要更改字体的元素有哪些:

阅读剩余
THE END