制作 EPUB 电子书并适配多看阅读

多看出品的图书都是全屏封面,而且注释都会有漂亮的弹出框,这对于我等完美主义者简直不能更棒了,但是,虽然说多看图库现在相对来说已经很全了,但是些许冷门书籍还是缺少的,需要我们自己制作。更多细节参考多看电子书规范扩展开放计划[1]

图片全屏显示

需要编辑 content.opf 这个文件,我大概讲一下这个文件的作用「一般使用软件制作 EPUB 都会自动生成,我们只需要稍作修改即可」

content.opf 是 EPUB 电子书的核心文件,而且是一个标准的XML文件,依据OPF 规范,主要由五个部分组成:

metadata // 元数据信息,比如标题、描述、类型、出版社之类的信息
manifest // 列出各类文件列表
spine // 决定文档阅读顺序
guide //指南,依次列出电子书的特定页面
tour //导读「根据不同的读者阅读水平或者阅读目的,按一定次序,选择电子书中的部分页面组成导读」

我们这里只需要修改 manifestspine 标签。

内包含很多的子元素大概格式如下:

<item id="" href="" media-type="">

假设现在我们需要在打开的电子书的第一页全屏显示书籍封面,可以新创建了一个 cover.html 文档,然后插入用作封面的图片「暂不知道插入多张图使用这个方法的效果」,那么需要在 manifest 找到相应的 item,设置一个 id 「这个 id 可以是任何值,方便记忆就行」

<item href="Text/cover.html" id="cover" media-type="application/xhtml+xml" />

然后到 <spine toc="ncx"> 标签设置章节展示顺序,idref 设置值引用 id 即可。

<itemref idref="cover" linear="no" properties="duokan-page-fullscreen" />

「需要注意的是,全屏图片页不能包含其他任何字符包括空格,只能插入一张图片,不然会显示空白页」

假如你制作的电子书有插图或者其他图片需要全屏幕显示,同样可以使用这个方法,并不是只适用于封面。

PS: 关于图片的尺寸,当然是越大越好,不需要特意地去裁切尺寸比例来配合设备,多看阅读不会拉伸显示,会等宽充满屏幕的方式显示出来。

有些书籍的封面如果找不到尺寸较大的封面图片显示效果会大打折扣,如果书的封面内容并不复杂,或者为二次元图片的,可以尝试使用 waifu2x 这个开源项目「无损」放大图片。

多看弹出框式注释

注释位置占位部分

<a class="duokan-footnote" href="#df-1"><img src=" ../Images/note.png"/></a>

「这里的 note.png 大概是会自动读取多看软件里面的文件吧」

注释的内容部分

<ol class="duokan-footnote-content">
    <li class="duokan-footnote-item"id="df-1"><p>这是一个注释文本。</p></li>
</ol>

个人制作风格

我个人修改电子书的话,大概是这样的目录结构顺序:

  • 封面
  • Logo
  • 插图
  • 正文
  • 解说/后记

当然作为一个洁癖完美主义者,是不会添加我自己的信息「比如:某某某制作,然后留一堆邮箱网址什么的」上去







PS:想想蛮蛋疼的,先在网上各种找方法教程,还专门下载了多看正版破解的 EPUB 文件来翻开看里面的写法,写到最后才发现了小米论坛有官方的制作教程

不过写都写好了还是发出来吧



随便说一句,我一般要自己制作盗版电子书,都是因为现有出版的纸质书印刷质量不好而又没有官方电子版。如果将来有正版电子书发售,还望大家多多支持正版。


  1. http://bbs.xiaomi.cn/thread/index/tid/7979823 ↩︎