PDF补丁丁:批量编辑书签、合并提取PDF,省下大部分重复操作
【免费下载链接】PDFPatcherPDF补丁丁——PDF工具箱,可以编辑书签、剪裁旋转页面、解除限制、提取或合并文档,探查文档结构,提取图片、转成图片等等项目地址: https://gitcode.com/GitHub_Trending/pd/PDFPatcher
十几个PDF合并时大小不一、书签全无;扫描件翻到一半才发现章节跳不了页。PDF补丁丁是免费开源的PDF工具箱,可批量编辑书签、合并拆分、提取图片、解除限制,适合经常处理文档资料的人。
一分钟上手
先说明一下:这个程序只支持 Windows(官方未提供 Linux 版本),运行依赖 .NET Framework 4.0 以上(Win8 及以上系统自带)。
- 到仓库获取最新版本源码:
git clone https://gitcode.com/GitHub_Trending/pd/PDFPatcher- 把编译好的发布包解压到任意目录,绿色免安装。
- Windows下双击 PDFPatcher.exe 启动主界面。
- 点击工具栏"添加文件",选中一个待处理的 PDF。
- 选一个功能入口(如"PDF文档选项"),指定输出路径,点"生成 PDF 文件"。
- 看到输出文件生成,就说明跑通了。
💡 若双击后提示缺少运行时,先安装 .NET Framework 4.x 再启动;若加密文档弹密码框,输错密码会直接跳过该文件。
功能速览
按日常使用频率排列的核心功能:
- 编辑书签—— 批量修改书签文本、页码、颜色、样式,支持正则查找替换 | 给无目录的PDF加可跳转书签
- 合并文件—— 多个PDF或图片合为一个,可保留原文档书签 | 多份讲稿合成一本
- 提取页面—— 按页码范围提取或删除页面,页码支持负数与倒序 | 去掉每份文件的首末页广告
- 提取图片—— 无损导出PDF内嵌的全部图片 | 从报告里批量取插图
- PDF文档选项(补丁)—— 统一页面尺寸、旋转页面、去除复制打印限制、清理隐藏数据 | 扫描件规整化
- 信息文件导入导出—— 把文档属性、书签、链接导出为XML,改完再写回 | 复用同一套书签结构
- 文档结构探查器—— 树形查看PDF内部对象,可编辑修改节点 | 排查文档为何打不开
三个真实工作场景
场景一:给一本没有书签的手册做出可跳转目录(入门级)
卡在哪:你拿到一本 91 页的PDF手册,书签栏空空如也,查一个功能只能从第1页一路滚下去。
怎么解:
- 打开"处理PDF文档"功能,保持"独立补丁"模式。
- 点击"添加文件",把手册PDF加入文件列表。
- 在"PDF 信息文件"一栏指定一个XML路径,例如
M:\书签\手册.xml。 - 点击"导出信息文件",程序把文档属性和现有书签导出到该XML。
- 用文本编辑器打开XML,增删书签项、改标题文字、对齐页码。
- 在"输出 PDF 文件"处指定新文件路径,点击"生成 PDF 文件"把修改写回文档。
拿到什么:新PDF的书签栏出现你整理好的章节目录,点击任意一项直接跳到对应页,91 页的手册不用再滚了。
场景二:修复改名后失效的PDF书签(进阶级)
卡在哪:你把PDF改了一个更顺手的文件名,结果点击书签弹出"无法找到文档 j24.pdf",整棵书签树全废了。
怎么解:
- 用书签编辑器打开这个PDF的书签。
- 按 Ctrl+A 全选书签项,勾选"修改操作包含未选中的内部书签"。
- 点击"修改"按钮,在菜单里选"强制设置为文件内链接",书签动作会从"打开外部PDF文档"变成"转到页面"。
- 如果跳转页码整体偏了一页,重新全选后使用"修改→增加页码"统一修正。
- 点击"补丁"按钮指定输出文件,生成修复后的新PDF。
拿到什么:书签不再依赖旧文件名,之后你把文档改名叫什么都不会弹错,每章跳转一次到位。
场景三:把扫描照片批量做成方向正确的PDF(批量级)
卡在哪:你有一整个文件夹的扫描照片要做成PDF,横图竖图混在一起,硬塞进竖向页面,每张横图上下都留一大条空白。
怎么解:
- 选择"制作PDF文件"功能。
- 点击"添加文件夹",把扫描图片文件夹整个导入列表。
- 打开"合并文档选项",切换到"页面布局"选项卡。
- 勾选"自动旋转页面适应原始内容纵横方向"。
- 指定输出PDF路径,点击"生成 PDF 文件"。
拿到什么:40 张照片按各自方向自动排进横竖页面,没有大面积空白,一个文件夹一次性出成品。
效率加成
技巧一:正则批量重命名书签文本(手动优化)
适用场景:几百条书签,编号、空格、繁简体参差不齐,逐条手改要改到眼花。 具体做法:在书签编辑器点"搜索及替换书签文本",打开正则表达式开关,用第(\d+)章这类模式匹配,替换文本里用$1引用分组内容,一次替换全部命中项。 省多少:逐条修改 300 条书签约 20 分钟,正则替换 30 秒。
技巧二:XML信息文件做成模板(半自动)
适用场景:每周都处理同类文档(周报、手册、合同),书签结构基本一样。 具体做法:第一份文档导出XML信息文件后手工整理成标准版并另存;之后同类文档在"PDF 信息文件"处直接指定这个模板,指定输出路径点"生成 PDF 文件"即可导入。 省多少:第二份文档起不用再搭一遍书签结构,每份约省 5 分钟。
技巧三:批量选中加替代符命名(全自动)
适用场景:同一套清理要对几十个文件做,比如批量删掉每份文件的首页和末页广告。 具体做法:在"提取页面"功能里一次选中全部文件,"排除页码范围"输入1;-1(负数从末尾起算),再右键"输出 PDF 文件"文本框插入<源文件名>占位符——程序会为每个输入文件按原文件名各生成一份输出,全程只需点一次按钮。 省多少:30 份文件从"逐份打开、改名、输出"约 40 分钟,缩到 1 分钟。
踩坑速查
Q:PDF改名后书签弹"无法找到文档"?A:能修。原因是书签用了指定旧文件名的外部链接。在书签编辑器全选书签,"修改→强制设置为文件内链接",再补丁输出即可。
Q:书签文本全是乱码?A:多半是编码不匹配。到"选项→读取编码选项",把书签文本编码改为 UTF-8 或 UTF-16 Big Endian,再在编辑器里重新打开文档。
Q:合并出来的横图上下留白很大?A:页面方向没跟着内容走。在合并文档选项的"页面布局"里勾选"自动旋转页面适应原始内容纵横方向",重新生成即可。
Q:批量处理时输出文件叫什么名字?A:默认按源文件名输出到指定目录;想自定义就右键"输出 PDF 文件"文本框,插入<源文件名>、<标题>等占位符。
Q:文件列表里加了带密码的PDF,处理会卡住吗?A:不会卡,但处理不了。添加文件时会弹密码框,密码不对就跳过该文档,其余文件照常处理。
开发者视角
源码结构(App/为主程序目录):
App/Common/—— 通用工具类与辅助函数App/Functions/—— 各功能窗体与控件,主界面按功能选项卡组织App/Model/—— 编辑文档用的高层数据模型,底层解析交给 iText 与 MuPDFApp/Processor/—— PDF处理核心算法,ContentProcessors子目录放各类内容流处理器App/Options/—— 各功能的选项定义doc/—— 使用手册(doc/使用手册.md)与配图
想加自己的处理逻辑:把处理器文件放在App/Processor/ContentProcessors/,实现IDocProcessor(文档级)或IPageProcessor(页面级)接口,再在处理引擎的调度处注册,即可挂进现有处理管道。
收束
如果你经常和文档材料打交道,把程序解压进工具目录放着;下次碰到无书签PDF或一堆待合并的讲稿,先丢给它试试。
【免费下载链接】PDFPatcherPDF补丁丁——PDF工具箱,可以编辑书签、剪裁旋转页面、解除限制、提取或合并文档,探查文档结构,提取图片、转成图片等等项目地址: https://gitcode.com/GitHub_Trending/pd/PDFPatcher
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考