主要功能

  • 读取 PDF 原有书签树并显示真实 PDF 页码
  • 使用简单的缩进文本格式编辑无限层级 PDF 书签
  • 支持父节点和叶子节点同时设置页码
  • 支持页码基准,按首个自定义书签调整后续页码
  • 自动检查缩进、标题、冒号和页码格式
  • 所有 PDF 数据只在浏览器本地内存中处理

书签编辑格式

一行表示一个书签,Tab 或 2 个空格表示一级缩进, 冒号用于分隔标题和页码,冒号后可以有空格

第一章 绪论: 1
  1.1 研究背景: 3
  1.2 研究意义: 5
  1.3 国内外研究现状: 8
    1.3.1 国内研究现状: 9
    1.3.2 国外研究现状: 12
  1.4 研究内容: 15
第二章 理论基础: 19

使用教程

  1. 选择本地 PDF 文件
  2. 设置页码基准
  3. 查看右侧 PDF 原书签
  4. 点击“导入原书签”
  5. 在左侧编辑书签文本
  6. 点击“校验书签”
  7. 点击“生成 PDF 下载”
书签格式是 YAML 吗?

不是左侧使用的是专门针对 PDF 书签设计的自定义缩进文本格式 程序使用自己的解析器处理,不依赖 YAML 解析器

冒号后面必须有空格吗?

不需要例如“第一章 绪论:1”和“第一章 绪论: 1”都有效, 冒号后可以有零个或多个空格

一个书签能不能同时拥有子书签和页码?

可以父节点同样可以设置页码,因此非常适合书籍目录

页码基准如何计算?

点击“校验书签”时,程序找到第一个非原 PDF 书签, 将它调整到“页码基准”指定的页码, 其余自定义书签按照原有页码之间的差值同步调整 导入的 PDF 原书签不会参与该计算

页码基准可以修改多次吗?

可以每次校验都会根据当前第一个自定义书签重新计算, 不会在上一次结果基础上累计偏移

PDF 是否会上传?

不会文件通过浏览器 File API 读取, PDF.js 和 pdf-lib 都直接在本地浏览器内存中工作

处理日志
PDF 文件
页码基准
尚未加载 PDF
左侧:书签编辑器 Tab / 2 空格 = 一级
右侧:PDF 原书签预览 只读
请选择一个 PDF 文件,程序会自动读取原有书签
隐私说明:PDF 文件只通过浏览器本地 File API 读取 本页面没有后端上传接口,PDF 内容不会上传到服务器