Parallel PDF Reader 是一个本地优先的多 PDF 并行阅读器,适合双语文档、原文/译文、教材/讲义、论文/资料等对照阅读场景。
它基于 HTML、CSS、JavaScript 和 PDF.js 构建,可直接在现代浏览器中运行。核心能力是多文档并排阅读、同步滚动、错位锚点、项目文件保存、笔记与高亮批注。
- 多 PDF 并排阅读:最多同时打开 4 个 PDF。
- 同步滚动:滚动一个文档,其他文档自动跟随。
- 错位锚点:为页码不一致的 PDF 建立对应关系,实现更准确的同步。
- 目录与检索:支持 PDF 书签目录、文档内全文搜索和跳转。
- 项目文件:可导出 / 导入
.readerproj,保存文档顺序、锚点、阅读进度、缩放、主题、笔记和批注。 - 可选保存 PDF 副本:项目文件可选择是否包含 PDF 本体。
- 页面便签:为指定文档页面添加笔记。
- 文本高亮:支持多色高亮和批注记录。
- 批注列表:集中查看、搜索页面便签和文本高亮。
- 极简界面:清爽工具栏、自动收起菜单、多主题阅读模式。
- 本地处理:PDF 和项目数据默认在本机浏览器中处理,不依赖后端服务。
下载项目后,直接用浏览器打开:
index.html
推荐浏览器:
- Microsoft Edge
- Google Chrome
- 点击 选文档,选择 1 到 4 个 PDF。
- 点击 开始阅读。
- 滚动任意文档,其他文档会按同步规则跟随。
- 若文档页码不一致,调整各文档到对应位置后点击 锁定错位。
- 使用目录、检索、页码跳转、缩放和主题功能辅助阅读。
- 通过 项目 → 导出项目文件 保存当前阅读状态。
- 下次通过 项目 → 导入项目文件 恢复阅读项目。
不同 PDF 往往存在封面、目录、版权页、插图页等差异,导致页码无法直接一一对应。
错位锚点用于记录多个文档在某一位置的对应关系。例如:
文档 A 第 15 页 ↔ 文档 B 第 14 页 ↔ 文档 C 第 16 页
设置多个锚点后,同步滚动会根据最近的锚点计算目标文档位置。
项目文件后缀为:
.readerproj
它可以保存:
- 文档列表与顺序
- 阅读进度
- 缩放比例
- 同步开关
- 错位锚点
- 主题设置
- 页面便签
- 文本高亮
- 批注内容
- 可选 PDF 副本
| 模式 | 说明 |
|---|---|
| 不保存 PDF | 项目文件较小;导入后需要重新选择对应 PDF |
| 保存 PDF | 项目文件较大;导入后可直接恢复完整阅读项目 |
为当前文档的当前页添加独立笔记,适合记录章节摘要、翻译疑问、阅读心得等。
选中 PDF 文本后,可添加多色高亮和批注。
支持颜色:
- 黄色
- 绿色
- 蓝色
- 粉色
- 紫色
扫描版 PDF 如果没有文字层,无法选中文本。此时可使用页面便签。
批注列表支持查看和搜索:
- 页面便签
- 文本高亮
- 批注内容
- 高亮原文
- 页码信息
项目包含一个独立工具:
readerproj_unpacker.html
它可以从 .readerproj 文件中解构出:
pdf/
data/
notes/
可导出内容包括:
- PDF 副本
- workspace.json
- anchors.json
- notes.json
- annotations.json
- notes.md
- manifest.json
如果 .readerproj 中没有保存 PDF 副本,则只能导出项目数据和笔记,不能还原 PDF 文件本体。
- 应用在浏览器本地运行。
- PDF 文件不会主动上传。
- 项目文件由用户手动导入和导出。
- 笔记、高亮、锚点和阅读进度保存在
.readerproj中。 - 如果使用浏览器本地存储,清理站点数据可能会删除临时状态。
重要项目建议定期导出 .readerproj 文件备份。
- 纯扫描 PDF 无法进行文本高亮。
- 超大 PDF 或多个扫描版 PDF 同时打开时仍可能占用较多 CPU。
- 批注不会写回原始 PDF 文件。
- 普通网页无法在未授权情况下直接读写任意本地路径。
- 项目文件包含 PDF 副本时体积会明显增大。
- HTML
- CSS
- JavaScript
- PDF.js
- File API
- File System Access API
- IndexedDB / localStorage 辅助状态存储