【epub.js】开源中间件epub.js的使用及其中文api

本文介绍了epub.js在Java Web和React环境中的使用,详细讲解了epub.js的API,包括EpubReader与epub.js的集成,以及如何打开图书、渲染、翻页、设置样式和管理事件等操作。
摘要由CSDN通过智能技术生成

 

epub是最流行的电子书规范之一,网络上对于Java Web有不少合适的方法来解析和呈现,但是关于epub.js的介绍比较少(尽管github上已经2K星了),更多的是概念性的内容,如:

epub.js是支持跨多个设备的,在浏览器端渲染EPUB文件的JavaScript库,提供通用的电子书功能界面(如渲染、持久和分页)不需要开发专用的应用程序或插件。

具体用法因人而异,在此我介绍结合React使用的案例:

epub.js中间件封装了解析epub文件的过程,ePubReader以控制器方式封装了页面动作响应。

以下是epub.js的官方文档:

https://github.com/futurepress/epub.js/blob/master/documentation/README.md

2017.11.22更新:

如果使用ePubReader解析图书,还想应用epub.js的API,需要以这种形式:

var reader = ePubReader("./book/"+newsid);//获得解析图书的实例
reader.book.on("book:ready",function(){alert('1')});//拿到book变量,然后就能使用epub.js的API了

原因是在ePubReader的源码中:

ePubReader解析并没有像epub.js一样返回一个book对象,而是返回了reader对象,这个reader对象在上图蓝色标记处创建了自己的book对象,这个book对象又来自epub.js的Book对象,所以reader.book就是epub.js中的book了,拿到book以后其他用法和epub.js都一样了。


 

方法:

ePub(bookPath, options) 

创建EPUB图书实例:

bookPath可选参数,指定epub文件路径,可以是网络资源,也可以是本地资源。

var Book = ePub("url/to/book/"); // With default options
var Book = ePub({ restore: true }); 
Book.open("url/to/book/"); // Books can be opened later 

Options可选参数,配置解析参数

{
  bookPath : null,
  version: 1, // Changing will cause stored Book information to be reloaded
  restore: false, // Skips parsing epub contents, loading from localstorage instead
  storage: false, // true (auto) or false (none) | override: 'ram', 'websqldatabase', 'indexeddb', 'filesystem'
  spreads: true, // Displays two columns
  fixedLayout : fa
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue是一种流行的JavaScript框架,而epub.js是一个用于在浏览器中呈现EPUB电子书的开源库。Vue和epub.js可以很好地结合使用,以创建动态和交互式的EPUB电子书阅读器。 在使用Vue时,可以使用其强大的组件化特性将epub.js集成到Vue应用程序中。通过将epub.js作为Vue组件的一部分,我们可以方便地管理和控制EPUB电子书的加载、显示和互动。 例如,可以创建一个名为EpubReader的Vue组件,该组件包含一个用于显示EPUB电子书内容的容器元素。在该组件的生命周期钩子中,可以使用epub.js提供的API方法加载和渲染EPUB电子书。同时,还可以使用Vue的数据绑定和事件监听来动态更新和响应EPUB电子书的变化。 在EpubReader组件中,可以通过将epub.js提供的方法与Vue模板和方法进行关联,实现一些功能,例如切换章节、搜索、标注和添加书签等。通过Vue的响应式特性,可以实现EPUB电子书内部的数据变化与Vue组件之间的交互和更新。 除了基本的EPUB电子书阅读功能外,还可以使用Vue的插件系统和其他Vue库,进一步扩展和定制EPUB电子书阅读器。例如,可以使用Vue Router来实现EPUB电子书的路由导航,以及使用Vuex来管理EPUB电子书的全局状态。 总之,Vue和epub.js的结合能够提供一种高效、灵活和可交互的EPUB电子书阅读体验。通过借助Vue的组件化和响应式特性,我们能够更方便地开发和定制EPUB电子书阅读器,满足用户对于电子书阅读的各种需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值