Skip to content

youdianmeng/Parallel-PDF-Reader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parallel PDF Reader

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. 点击 选文档,选择 1 到 4 个 PDF。
  2. 点击 开始阅读
  3. 滚动任意文档,其他文档会按同步规则跟随。
  4. 若文档页码不一致,调整各文档到对应位置后点击 锁定错位
  5. 使用目录、检索、页码跳转、缩放和主题功能辅助阅读。
  6. 通过 项目 → 导出项目文件 保存当前阅读状态。
  7. 下次通过 项目 → 导入项目文件 恢复阅读项目。

错位锚点

不同 PDF 往往存在封面、目录、版权页、插图页等差异,导致页码无法直接一一对应。

错位锚点用于记录多个文档在某一位置的对应关系。例如:

文档 A 第 15 页 ↔ 文档 B 第 14 页 ↔ 文档 C 第 16 页

设置多个锚点后,同步滚动会根据最近的锚点计算目标文档位置。


项目文件

项目文件后缀为:

.readerproj

它可以保存:

  • 文档列表与顺序
  • 阅读进度
  • 缩放比例
  • 同步开关
  • 错位锚点
  • 主题设置
  • 页面便签
  • 文本高亮
  • 批注内容
  • 可选 PDF 副本

是否保存 PDF 副本

模式 说明
不保存 PDF 项目文件较小;导入后需要重新选择对应 PDF
保存 PDF 项目文件较大;导入后可直接恢复完整阅读项目

笔记与批注

页面便签

为当前文档的当前页添加独立笔记,适合记录章节摘要、翻译疑问、阅读心得等。

文本高亮

选中 PDF 文本后,可添加多色高亮和批注。

支持颜色:

  • 黄色
  • 绿色
  • 蓝色
  • 粉色
  • 紫色

扫描版 PDF 如果没有文字层,无法选中文本。此时可使用页面便签。

批注列表

批注列表支持查看和搜索:

  • 页面便签
  • 文本高亮
  • 批注内容
  • 高亮原文
  • 页码信息

ReaderProj 解构工具

项目包含一个独立工具:

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 辅助状态存储

About

本地优先的多 PDF 并行阅读器,支持最多 4 个 PDF 并排阅读、同步滚动、错位锚点、项目文件导入导出、页面便签、文本高亮和批注搜索,适合双语文档、原文/译文、教材、论文等对照阅读场景。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages