完整指南 Epub.js Reader:浏览器里直接读 EPUB 的开源阅读器
【免费下载链接】epubjs-readerEpub.js Reader项目地址: https://gitcode.com/gh_mirrors/ep/epubjs-reader
Epub.js Reader 是一个免费的开源电子书阅读器,让你不用安装任何客户端,直接在浏览器里打开 EPUB 文件阅读,带目录、书签、笔记和离线进度保存。
为什么需要它:浏览器读 EPUB 的三个小麻烦
第一,EPUB 双击打不开。在浏览器里遇到 .epub 文件,你多半只能选择下载,却没人告诉你下一步该干嘛——像拿到了一个没有勺子的罐头。
第二,进度不同步。装专门的阅读 App,手机读完一半,换台电脑又从头开始,找上次停在哪一页全靠回忆。
第三,想边读边做标记却无从下手。很多网页阅读器没有书签,或者做笔记必须先注册账号、绑定云端。
Epub.js Reader 就是为解决这类困扰而生的:纯浏览器技术,无需安装,阅读进度存在你自己的电脑里。
它是怎么做到的:读懂它的三个机制
一个在浏览器里就地的"拆书工厂"。EPUB 本质上是个 ZIP 压缩包,阅读器通过 jszip 在浏览器中直接解压,再读取书里的 OPF 元数据(书籍的"版权页")和 NCX 导航("目录卡"),把整本书的结构搭出来。打个比方:解析器就是拆书、上架的图书管理员。
一台按页渲染的"翻页机"。每一章都是一个 XHTML 文件(类似网页),阅读器把它渲染进页面的一个容器里,负责分页和翻页。点箭头翻页、滚动连续看,两种姿势都支持。
一本记得住进度的"小笔记本"。它用 localforage(浏览器端本地数据库)存下你的阅读位置、书签和笔记,关闭页面再回来可以接着读——这正是离线阅读的实现方式,数据从不离开你的设备。
代码组织也值得一看:每个功能都是一个独立的控制器,目录、书签、设置各自一个文件,改哪个都互不干扰。
你能用它做什么
- 在线图书馆:网站托管 EPUB 文件,读者点链接即读,不用下载更不用装 App。
- 课程教材分发:把讲义做成 EPUB 发给学生,浏览器打开就有目录和搜索。
- 个人读书笔记:读到重点就加书签、写批注,下次打开都还在。
- 嵌入式阅读模块:给页面 URL 加个
?bookPath=书籍地址参数,同一个阅读器就能换书开读,页面本身一行不用改。
快速上手:五分钟搭起自己的阅读器
- 克隆仓库:
git clone https://gitcode.com/gh_mirrors/ep/epubjs-reader - 在项目根目录执行
npm install安装依赖 - 运行
npm start,它会启一个本地静态服务(逻辑见 tools/serve.js) - 用浏览器打开
reader/index.html,页面默认加载《白鲸》;想换书就在地址栏追加?bookPath=参数
官方文档:README.md;主源码在 src/,各功能模块拆开在 src/controllers/,搜索等扩展在 src/plugins/。
写在最后
Epub.js Reader 用最小的代码证明了一件事:正经的 EPUB 阅读器不必靠 App,浏览器就够了。
不妨现在就把仓库克隆下来,从 src/reader.js 读起;遇到问题或想到新玩法,欢迎直接提 issue 参与社区共建。
【免费下载链接】epubjs-readerEpub.js Reader项目地址: https://gitcode.com/gh_mirrors/ep/epubjs-reader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考