Skip to content

xiaoxu202404-dotcom/EchoPdfNote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PDF 语音标注服务器

这是一个基于 Web 的 PDF 阅读器和标注工具,使用 Node.js 和 Express 作为后端,前端使用原生 JavaScript 和 PDF.js 库。它允许用户上传 PDF 文件,并在文档的任意位置添加语音、文字和图片标注。

✨ 主要功能

  • PDF 阅读: 在浏览器中流畅地查看 PDF 文件,支持翻页、缩放和分辨率调整。
  • 语音标注: 在 PDF 页面上点击即可录制并添加语音笔记。
  • 文字标注: 添加支持 Markdown 语法的富文本笔记,并支持代码高亮。
  • 图片标注: 从本地上传或直接粘贴剪贴板中的图片作为标注。
  • 独立阅读记录: 为每个 PDF 文件单独保存阅读进度、滚动位置和所有标注。
  • 数据持久化: 所有标注数据都保存在服务器上,与对应的 PDF 文件关联。
  • PDF 大纲 (目录): 解析并显示 PDF 的目录,方便快速跳转。
  • 丰富的快捷键: 提供多种键盘快捷键以提升浏览和标注效率。
  • 响应式界面: 界面元素(如工具栏、侧边栏)设计美观且易于使用。

📁 项目结构

.
├── images/            # (可能未使用) 存放图片的旧目录
├── index.html         # 前端应用程序主页面
├── notes/             # (可能未使用) 存放笔记的旧目录
├── package.json       # 项目依赖和脚本配置
├── pdf_data/          # 核心数据存储目录
│   └── [PDF文件名]/    # 每个PDF文件对应的独立文件夹
│       ├── notes.json # 存储该PDF的所有标注信息
│       ├── audio_...  # 存储语音标注文件
│       └── images/    # 存储图片标注文件
├── server.js          # 后端 Express 服务器逻辑
├── start.bat          # 在 Windows 上启动服务器的批处理文件
└── uploads/           # (可能未使用) 默认的文件上传目录

🚀 快速开始

环境要求

  • Node.js (推荐 v14.x 或更高版本)
  • npm (通常随 Node.js 一起安装)

安装

  1. 克隆或下载此项目。

  2. 在项目根目录下打开终端,运行以下命令安装项目依赖:

    npm install

运行

安装完成后,可以通过以下任一方式启动服务器:

  • 使用 npm 命令:

    npm start
  • 直接运行 Node.js:

    node server.js
  • 在 Windows 上: 直接双击运行 start.bat 文件。

服务器启动后,控制台会显示 服务器运行在 http://localhost:3000。此时,在浏览器中打开 http://localhost:3000 即可开始使用。

⌨️ 快捷键

  • Alt + 鼠标左键: 在鼠标点击位置快速添加文字标注。
  • Alt + S: 在弹出的编辑框中保存文字标注。
  • 鼠标右键: 在任意位置快速开始或停止录音。
  • / : 上一页 / 下一页。
  • / : 向上 / 向下翻 5 页。
  • Home / End: 跳转到第一页 / 最后一页。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors