使用 Python 为 PDF 添加大纲

使用 Python 为 PDF 添加大纲

操作流程

  1. 手写/搜索/OCR 得到目录信息
  2. 通过目录信息整理成数据结构
  3. 使用PyPDF2库添加大纲

已完成

  • yaml 格式的配置
  • 添加大纲
  • 多任务

多任务定义

image-20250223132301119

参数:

1
2
3
4
tasks: 任务列表
outline: 目录 yaml 文件
override: 是否直接覆盖源文件
pdf: 原始 PDF文件

目录配置文件

image-20250223132331086

参数:

1
2
3
4
5
6
bias: PDF文件页码与书籍/目录中的页码的偏移量
max_recurse: 最大子层级目录
nobias: 页码不需要偏移的章节,一般用于封面、目录等
toc: 目录,可以参考书籍本身的目录,一般直接写标题和页码的键值对即可。如果需要子层级,则添加 pn 参数和 toc
pn: 子层级的根层级的页码
toc: 子层级的目录,如1.1, 1.2

代码

GitHub地址