[PuffBook项目总结]阅读器及epubjs的核心工作原理
2019-04-19 本文已影响0人
Yixi_Li
阅读器的工作原理:
通过阅读器引擎将各种格式的电子书(txt,pdf,epub,mobi...)进行解析(书名,作者,目录,封面,章节...)并渲染到界面上,最后在添加一系列的辅助功能(字号,背景色,目录,书签,笔记...)以方便用户使用。
epub:现在比较主流的电子书格式
mobi:亚马逊kindle的电子书格式
epubjs的核心工作原理:
image.png首先,epub电子书会通过epubjs实例化一个Book对象,Book对象会对电子书进行解析,可以通过renderTo方法生成一个Rendition对象,Rendition主要负责的是电子书的渲染,通过Rendition我们可以得到Theme对象,Theme负责电子书的样式和主题(比如设置字号和设置主题这些功能都需要通过Theme对象来实现。Location对象负责电子书的定位,用来实现拖动进度条时快速定位的功能,它是由Book对象生成的。Navigation也是由Book对象生成的,它用来展示电子书目录并提供目录所在的路径。