介绍#
Mozilla 的 pdf.js 项目虽然在浏览文档电子书时表现出色,但用来在 Web 端看漫画体验就很一般了。
原版默认采用 Automatic Zoom(自动缩放)和 Vertical Scrolling(垂直滚动),这种配置在阅读漫画时,既无法一眼看清全页,也丢失了翻页的沉浸感。
所以我基于 pdf.js 进行了一番“魔改”,将其打造成了一个专用的漫画阅读器。主要改动包括:
- 解除跨域限制 移除了 Viewer 对“文件来源必须与 Viewer 同源”的强制校验,允许加载第三方域名的 PDF 文件(需服务端配置 CORS)。
- 默认全屏适应 默认缩放使用 Page Fit 模式,打开即全屏显示单页内容。
- 默认翻页模式 默认视图使用 Page Flip,模拟漫画的翻页体验,而不是电子书的垂直滚动。
- 智能点击翻页 添加了屏幕两侧点击翻页功能,在 Tools 里可以手动修改规则。默认点击屏幕左侧翻下一页,点击右侧翻上一页。
- 移动端优化 检测到移动端时会自动显示悬浮的全屏按钮,点击即可进入 Presentation Mode,在手机小屏上快速最大化显示内容。
- 防误触机制 增加了 300ms 的点击防抖(Debounce),防止手滑导致连续翻页。
- 自动连载加载
自动加载下一卷,匹配正则规则
(_E)(\d+)(\.pdf)$。当阅读到当前卷最后一页并继续翻页时,会自动检测并加载下一卷,实现无缝连读。
使用方法#
直接使用以下链接格式:
https://mpdf.mezn.de/web/viewer?file=URL

