使用 Vue 和 epub.js 制作电子书阅读器

ePub 简介

ePub 是一种电子书的标准格式,平时我看的电子书大部分是这种格式。在手机上我一般用“多看”阅读 ePub 电子书,在 Windows 上找不到用起来比较顺心的软件,所以很久之前就想折腾一下,自己开发一个 ePub 电子书阅读器。这两天趁着有空,做了一个简单的阅读器。虽然还有些 bug,但基本功能算是齐全了。自己开发的有很多好处,以后只要稍微修改一下,就可以实现导出 HTML 或者 导出 Markdown 的功能,方便保存读书笔记,这一点比大多数软件好用多了。

epub.js 简介

ePub 作为一种标准格式,自然而然地会有很多开源的实现。基于 Javascript 的库不多,epub.js 算是做得最好的了。使用起来比较简单,官方的示例和第三方例子也比较丰富,有兴趣的自己去看,这里不多说。

indexedDB

第一次在项目中使用 indexedDB,之前一直用 localStorage 作为存储方案。之所以用 indexedDB,是因为 localStorage 只有 5M 的存储空间,只能选择 indexedDB。

本想用 Promise 封装 indexedDB 的,奈何能力不够,没有成功。感觉 indexedDB 兼容性还是不怎么样,浪费了半天的时间在调试上面,还是没成功,结果升级一下浏览器就解决了,也是醉了。项目快做好的时候发现了一个封装库 localForage,感觉还不错,可以避免少采坑,在这里推荐一下。

项目介绍

epub-front 是一个 Web 版的 ePub 电子书阅读器,使用 Vue、epub.js、indexedDB 和 rangy 开发。

你可以点击这里 使用该阅读器来阅读 ePub 电子书。

近期可能会增加一些功能、比如导出 Markdown、编辑 ePub 什么的,看心情。

欢迎 star、PR。

posted @ 2018-04-06 23:07  yunser_blog  阅读(12913)  评论(1编辑  收藏  举报