一天一个开源项目(第53篇):PDF 补丁丁 - 功能全面的 PDF 工具箱,编辑书签、解除限制、合并拆分、OCR 识别

引言

"永久免费,绝不过期,无广告,无弹出废话对话框,不窥探隐私。"

这是「一天一个开源项目」系列的第 53 篇文章。今天介绍的项目是 PDF 补丁丁 (PDFPatcher,GitHub)。

需要编辑 PDF 书签、解除复制打印限制、合并拆分文档、提取图片、将图片 PDF 转为可搜索书签?PDF 补丁丁 是一款基于 .NET 框架 的 PDF 工具箱 :支持编辑书签 、剪裁旋转页面 、解除限制 、提取或合并文档 、探查文档结构 、OCR 识别 、字体替换 等,采用 AGPL + 良心授权,永久免费、无广告、无弹窗。

你将学到什么

  • PDF 补丁丁的核心功能与使用场景
  • 技术架构:iText + MuPDF 双引擎
  • 书签编辑器、文档合并、OCR 等特色功能
  • 良心授权协议的含义
  • 与同类 PDF 工具的对比

前置知识

  • 对 PDF 文档有基本了解
  • Windows 系统使用经验(本工具仅支持 Windows)

项目背景

项目简介

PDF 补丁丁 (PDFPatcher)是一款 PDF 处理工具 ,基于 .NET Framework 开发,主要采用 iText 和 MuPDF 两个开源组件。iText 负责解析、生成、修改 PDF 及嵌入字体;MuPDF 负责渲染 PDF 为位图。功能覆盖编辑、制作、拆分、合并、OCR、结构分析等。

作者

项目数据


主要功能

核心功能

类别 功能
修改文档 文档属性、页码编号、页面链接;统一页面尺寸;删除自动打开网页等动作;去除复制及打印限制;设置阅读器初始模式;清理隐藏垃圾;重新压缩黑白图片;旋转页面
书签编辑 带阅读界面(支持竖排从右到左);批量修改书签属性;书签精确定位;查找替换(正则、XPath);自动快速生成书签
制作 PDF 合并 PDF 或图片;保留原书签或挂新书签;根据文件名生成书签;统一页面尺寸
拆分合并 拆分或合并 PDF,保留或挂上新书签
提取导出 高速无损导出图片;页面转图片;提取或删除指定页面;调整页面顺序
高级功能 根据元数据重命名;OCR 识别(调用微软 Office MODI);图片 PDF 目录页转书签;替换字体;嵌入字库到 PDF
结构分析 树视图显示文档结构;编辑修改节点;导出为 XML

使用场景

  1. 电子书整理:合并扫描 PDF、生成书签、统一页面尺寸
  2. 文档去限制:去除复制、打印限制,便于阅读和引用
  3. 批量处理:根据元数据重命名、提取页面、批量导出图片
  4. 图片 PDF 优化:OCR 识别目录页,转为可点击书签
  5. 字体嵌入:嵌入字库到 PDF,解决 Kindle 等设备乱码

快速开始

运行环境:

  • Windows 7 及以上
  • .NET Framework 4.0--4.8
  • OCR 功能需安装 Microsoft Office 2003/2007 的 Document Imaging 组件(MODI)

下载与安装:

从 GitHub Releases 下载最新版,解压即可使用,无需安装。

编译源码(可选):

  • Visual Studio 2022 或更新版本
  • 安装「.NET 桌面开发」和「C++ 桌面开发」工作负载
  • 目标框架建议 .NET Framework 4.8

良心授权

AGPL + 良心授权:软件基于 AGPL,附加条件为「用户每次使用后如有所获益,应行一善事」。善事无分大小,有心则行。若使用源码开发商业软件并产生收益,应将收益中不低于千分之一的金额捐赠给弱势群体。遵循与否全在于良心。

项目优势

对比项 PDF 补丁丁 商业 PDF 工具 在线 PDF 工具
费用 永久免费 订阅制 免费/有限制
广告 无 无 可能有
隐私 本地处理 视产品而定 上传风险
功能深度 编辑、OCR、结构分析 功能全面 基础功能
平台 仅 Windows 多平台 跨平台

项目详细剖析

技术架构

核心组件:

  • iText:.NET 组件,解析、生成、修改 PDF,嵌入 TTF 字体子集
  • MuPDF:C 语言库,渲染 PDF 为位图,通过 P/Invoke 调用(SharpMuPDF)
  • JBig2:JBIG2 图像编码/解码

其他组件:ObjectListView、FreeImage、Cyotek ImageBox、TabControlExtra、HTMLRenderer 等。

源码结构

bash 复制代码
PDFPatcher/
├── App/              # 主程序
│   ├── Common/       # 工具类
│   ├── Functions/    # 功能窗体和控件
│   ├── Lib/          # 第三方组件
│   ├── Model/        # 高级模型
│   ├── Options/      # 程序选项
│   └── Processor/    # PDF 处理算法(含 Mupdf P/Invoke)
├── JBig2/            # JBIG2 编解码
├── doc/              # 使用文档
└── 使用手册.docx

特色功能说明

书签编辑器:支持正则表达式和 XPath 匹配,可快速选择篇、章、节书签,自动生成文档书签。

OCR 识别:调用 Microsoft Office 的 MODI(Document Imaging)组件,识别图片中的文字,将图片 PDF 目录页转换为可点击书签。

字体替换与嵌入:替换文档字体;嵌入字库到 PDF,解决 Kindle 等无字库设备的乱码问题。


项目地址与资源

官方资源

适用人群

  • 电子书整理、扫描 PDF 处理
  • 需要解除 PDF 限制的用户
  • 需要批量合并、拆分、提取页面的用户
  • 需要 OCR 和字体嵌入的用户
  • PDF 格式爱好者、开发者

欢迎来我中的个人主页找到更多有用的知识和有趣的产品

相关推荐
不悔哥3 天前
开源OV-Watch:怎么做一个智能手表
单片机·开源·嵌入式
家和803 天前
Carla仿真系列:4_在 Carla 的 Tesla 上装 4 路摄像头,并创建网格为环视拼接做准备
开源
感谢地心引力3 天前
我用 Doubao-Seed-2.1-pro 做了一个深度融入 AI 功能的本地知识库软件
ai·开源·seed·markdown·豆包
alsmile3 天前
Node-RED 之外,国产规则引擎的新方案:基于标准语法,Go 先行实现
后端·开源·go
瑶山3 天前
开源编程Agent-OpenCode完整使用教程
开源·agent·ai编程·opencode
m4Rk_3 天前
【论文阅读】Agent 记忆机制(77):TSM——让记忆回到事件真正发生的时间
论文阅读·人工智能·学习·开源·github
十六年开源服务商3 天前
2026网站主题打包方案深度解析
开源
活文字3 天前
济南开启扁鹊故里中医药文旅体验周:今年已办市集70余场
资讯·商业·产业
小葱运维3 天前
命名与环境规范
运维·开源·云计算
菩提小狗3 天前
每日极客日报 · 2026年09月21日
ai·开源·极客日报·it热点·技术资讯