Paged.js:浏览器中的分页利器
项目地址:https://gitcode.com/gh_mirrors/pa/pagedjs
Paged.js 是一个开源库,它在浏览器中实现页面分栏展示,并能通过Web技术生成打印书籍。这个库是对Paged Media和Generated Content CSS模块的JavaScript复现,提供自定义属性处理程序的接口。
其核心功能的快速预览可在pagedjs.org/documentation找到。
安装与使用
Paged.js 可以通过 NPM 方式安装:
$ npm install pagedjs
接着,你可以这样导入并使用:
import { Previewer } from 'pagedjs';
let paged = new Previewer();
let flow = paged.preview(DOMContent, ["path/to/css/file.css"], document.body).then((flow) => {
console.log("Rendered", flow.total, "pages.");
});
或者,在HTML文件中添加 polyfill 来处理@page
CSS:
<script src="https://unpkg.com/pagedjs/dist/paged.polyfill.js"></script>
应用场景
Paged.js 可用于创建在线阅读器,特别是在处理长篇文档时,它可以自动将内容分成多页显示。此外,如果你需要创建一个基于Web的电子书生成工具,Paged.js 也是理想的选择。例如,你可以结合Epub.js来处理Epub格式的书籍。
特点概览
- 兼容性强: 支持CSS的Paged Media和Generated Content模块,即使在不支持这些特性的浏览器中也能工作。
- 灵活性高: 提供接口注册自定义处理器,扩展性极佳。
- API友好: 简洁的JavaScript API使得集成到现有项目中非常容易。
- CLI工具: 提供命令行工具,可以利用Puppeteer渲染HTML为PDF。
- 易于调试: 提供了详细的文档和示例,帮助开发者更好地理解和使用。
无论是前端开发人员,还是热衷于Web出版的人,Paged.js 都是一款值得尝试的优秀工具。立即加入,探索更多可能性吧!