PDF导航书签工具PDFdir:给扫描版PDF一键生成可点击目录 📅 2026/8/14 14:41:01 PDF导航书签工具PDFdir给扫描版PDF一键生成可点击目录【免费下载链接】pdfdirPDF导航大纲/目录添加工具项目地址: https://gitcode.com/gh_mirrors/pd/pdfdir上周帮朋友整理一本三百多页的扫描版教材想跳到第八章只能一页一页翻翻到怀疑人生。这种痛凡是读过扫描版电子书的人应该都懂。PDFdir 就是来救场的——它是一个开源的PDF 导航书签添加工具能根据现成的目录文本自动为 PDF 生成可点击的目录大纲彻底告别翻页找章节。一个没有书签的 PDF到底有多折磨人想象一下你下载了一本 300 页的技术手册PDF 里连个目录都没有。想查某个 API 的说明先猜页码再翻十页想回看前面的公式往回翻到眼晕。更要命的是这类问题几乎无法靠 PDF 阅读器自身解决——书签必须写进文件里普通编辑软件又做不了。市面上确实有专门的 PDF 编辑器能手动加书签但一本书几十个章节一个个手点光想想就劝退。PDFdir 的思路完全不同既然书里本来就有目录或者在电商、读书网站上能查到目录文本那就让程序照着这份文本自动把导航书签批量生成出来。你只管复制粘贴剩下的交给工具。PDFdir 是怎么干活的一句话概括原理拿标题页码格式的目录文本 → 程序解析 → 按层级生成大纲 → 写进 PDF另存为一个新文件。原文件保持不动零风险。几个核心能力值得先记住智能解析目录文本不管是电商商品描述里的目录、读书网站的目录页还是从 PDF 里提取出来的目录内容只要符合每行一个标题页码的规律都能识别。最多 6 级层级结构从章到节到小节再到更细的层级学术著作、技术手册这种多层结构的书也能完整还原。双模式操作图形界面适合单本精修命令行适合批量处理。不破坏原文件生成的是原文件名_new.pdf不满意随时重来。从零装好五分钟搞定运行环境PDFdir 基于 Python 开发跨平台跑在 Windows、macOS、Linux 上都没问题。源码方式运行需要 Python 3 和几个依赖包装起来不复杂。先把代码拿到本地git clone https://gitcode.com/gh_mirrors/pd/pdfdir进入项目目录后安装依赖pip install -r requirements.txt依赖主要是 PyQt5图形界面、pypdfPDF 读写这几个装完就能启动python run_gui.py如果不想用图形界面直接python run.py也可以。到这里工具就跑起来了接下来进入正题。第一次实战给扫描版 PDF 添加导航书签的完整流程第一步准备好 PDF 和目录文本目录文本的格式非常简单每行一条标题页码比如前言 1 第1章 社会心理学导论 2 第2章 社会中的自我 32 第3章 社会信念与判断 58文本从哪儿来后文专门讲先继续走流程。第二步打开界面导入文件运行python run_gui.py后在PDF 文件路径一栏填入或通过打开按钮选择你的 PDF。接着把目录文本整段粘贴进目录文本输入框。第三步预览、微调、写入粘贴完成的瞬间界面右侧会自动生成一棵目录树——这就是将要写进 PDF 的书签结构。此时你可以双击任意条目修改标题文字或页码拖拽条目调整顺序或上下级关系如果整本书的页码有统一偏移比如目录前还有几十页序言在偏移量输入框里填上修正值。确认无误后点击写入按钮等状态栏提示完成去原文件所在目录找原文件名_new.pdf打开一看——左侧大纲面板里整本书的导航书签整整齐齐地列好了。目录文本从哪儿找三个靠谱来源这是新手最容易卡住的一步。别慌来源其实很多电商和图书网站亚马逊等平台在商品描述→目录里通常会放出全书目录文本直接复制即可格式和工具要求的几乎一致。PDF 自带的目录有些文字版 PDF 虽然没有书签但正文里有目录页。选中目录页文字复制出来就能用。更省事的是PDFdir 打开 PDF 时会尝试读取文件里已有的书签并自动填入。手动整理书不多的话照着封面或版权页敲一遍也就几分钟。有一点要提醒生成的目录质量完全取决于你粘贴的文本。文本里标题写错了、页码抄漏了书签就会跟着错这是工具无法替你兜底的。进阶玩法一命令行批量给 PDF 添加书签单本处理用界面很舒服但如果你手头有一整个文件夹的 PDF 等着加书签命令行才是效率之王。命令行入口是run_cli.py用法如下python run_cli.py 输入.pdf 目录.txt后面还可以跟两个常用参数--offset 数字给所有页码加一个统一偏移量解决页码对不上的问题--l0到--l5分别指定第 0 级到第 5 级目录的匹配规则。配合脚本循环遍历文件夹就能实现PDF 书签批量添加——把整理书库这种重复劳动压缩成一条命令。进阶玩法二用正则表达式精确控制章节层级默认情况下工具按第X章X.X这类常见编号来分层。但不同书的目录格式千差万别有的用第一部分有的用罗马数字这时就该正则表达式上场了。举个直观的例子python run_cli.py --l0 第\d章 --l1 \d\.\d 输入.pdf 目录.txt意思是以第数字章开头的行识别为一级标题以1.2这种编号开头的行识别为二级标题。正则就是编程里的高级通配符这里只需要记几个最常用的\d匹配单个数字\d匹配一串数字\w匹配单个字符含数字和汉字{m,n}控制匹配次数比如\w{1,2}表示 1 到 2 个字符。提示一句像\d这种会尽量多匹配写规则时宁可把范围定窄一点也别让它误吞相邻内容。相关源码都在项目里想深入研究可以看 命令行入口 和 图形界面模块。新手避坑清单这四个问题最常见用了一段时间下面几个坑几乎人人都会遇到提前知道能少走弯路序言、目录页这类非正文部分没有页码。工具会默认把它们链接到第 1 页属于正常现象需要精确的话在界面里手动改一下即可。个别条目缺页码。比如目录里某条只有标题没有数字工具会把它链接到上一个有页码的标题页留意一下就行。页码整体对不上。多半是书的页码体系问题用--offset或界面里的偏移量统一修正比逐条改快得多。想保留 PDF 里原有的书签。界面上有相关选项勾选后新书签会和旧书签合并而不是覆盖这个细节很实用。另外如果你习惯用英文界面把language/en.qm放到程序同目录下在菜单栏语言里切换即可。下一步从今天开始整理你的电子书库PDFdir 不是那种需要研究半天才能上手的工具——下载、粘贴、写入三下五除二就能让一本哑巴 PDF拥有完整导航。与其收藏吃灰不如现在就 clone 下来拿手头最常翻的那本扫描版书试一次亲眼看看大纲面板里刷出整整齐齐书签的瞬间。等跑顺了再把收藏夹里那些没有书签的 PDF 挨个过一遍你的数字书库会从此变得井然有序找东西再也不用靠记忆力和翻页。【免费下载链接】pdfdirPDF导航大纲/目录添加工具项目地址: https://gitcode.com/gh_mirrors/pd/pdfdir创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考