前言

在日常工作中PDF文档的处理往往受限于其固有的格式,使得用户在编辑、合并、剪裁等方面面临诸多不便。今天大姚给大家分享一个.NET开源、免费、功能强大的 PDF 处理工具:PDF 补丁丁(PDFPatcher)。

项目介绍

PDF 补丁丁(PDFPatcher)是一款.NET开源(AGPL)、免费、功能强大的 PDF 处理工具,可以编辑书签、剪裁旋转页面、解除限制、提取或合并文档,探查文档结构,提取图片、转成图片等等,旨在为用户提供便捷、高效的 PDF 编辑和管理体验。

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

项目特点

  • 提取或删除 PDF 文档中指定的页面,调整 PDF 文档的页面顺序。
  • 支持以树视图显示 PDF 文档结构,可编辑修改 PDF 文档节点,或将 PDF 文档导出成 XML 文件,供 PDF 爱好者分析、调试之用。
  • 改属性、页码、链接,统一页面尺寸,删除自动动作,去除复制打印限制,设置阅读模式,清理隐藏数据,重新压缩图片,旋转页面。
  • 合并已有 PDF 文件或图片,生成新的 PDF 文件;合并后的 PDF 文档带有原文档的书签,还可挂上新书签(或根据文件名生成),新书签文本和样式可自定义;合并的 PDF 文档可指定统一的页面尺寸,以便打印和阅读。
  • 带有阅读界面(具有便于阅读竖排文档的从右到左阅读方式),可批量修改 PDF 书签属性(颜色、样式、目标页码、缩放比例等),书签可精确定位到页面中间;在书签中执行查找替换(支持正则表达式及 XPath 匹配、可快速选择篇、章、节书签),自动快速生成文档书签。
  • 等等......

项目源代码

源代码的结构:

项目运行环境

  • Windows 7 以上版本的操作系统。
  • .NET Framework 4.0 到 4.8 版本。

运行功能演示

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看,别忘了给项目一个Star支持。

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没)。

一个.NET开源、免费、功能强大的 PDF 处理工具的更多相关文章

  1. 功能强大的PDF实用工具

    PDF实用工具(PDFTool)是北京博信施科技有限有限公司研制开发的一款专门提供对PDF文件进行编辑.加工的处理软件.本软件具有对PDF文件进行分割.结合.加密.解密.添加水印.设定有效期限等多种功 ...

  2. 一款开源且功能强大的C#甘特图控件.NET Winforms Gantt Chart Control

    甘特图在项目管理中非常重要,甘特图的思想比较简单,即以图示的方式通过活动列表和时间刻度形象地表示出任何特定项目的活动顺序与持续时间.它直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比.管理 ...

  3. Brackets 1.8 开源+免费的Web前端网页文本编辑工具

    Brackets 1.8 开源+免费的Web网页文本编辑工具   -------------->> ---------------------- A modern, open source ...

  4. 开源且功能强大的C# 扩展方法类库Pure.Ext,包含1000+个拓展方法 (支持.Net Framework和.Net Core)

    先上地址 Github: https://github.com/purestackorg/pure.ext Gitee: https://gitee.com/purestack/pure.ext 扩展 ...

  5. roughViz 一个可重用,功能强大的手绘图表组件

    前段时间介绍过一个chart.xkcd 的手绘图表组件,roughViz 是另外一个,同时也提供了 比较多的图表类型,api 参考文档也比较全 支持的图表类型 Bar Horizontal Bar D ...

  6. 分享一个好用的功能强大的节点树jQuery插件

    http://www.treejs.cn/

  7. 功能强大的Xcode辅助工具Faux Pas:帮你找到各种隐形的bug

    本文转载至 http://www.cocoachina.com/industry/20140804/9307.html Faux Pas(Beta版下载地址)是一个Xcode辅助工具,用以检查Xcod ...

  8. 一款功能强大的TCP/UDP工具---flynet

    前言 前段时间做某个项目,由于涉及到tcp/udp方面的知识比较多,于是就索性趁热打铁,写个工具来强化相关知识.另外由于并非十分擅长Golang,所以也顺便再了解下Golang吧. 简介 flynet ...

  9. ProcessOn:功能强大的在线作图工具(HTML5)

    ProcessOn是一款专业作图人员的社交网络,这里汇聚很多业界专家.学者,同时他们分享的作品又形成一个庞大的知识图库,你在学习专业知识的同时还可以结交一些志同道合的新朋友. ProcessOn核心设 ...

  10. Caf.CMS是一个免费的、 开源,功能齐全的CMS

    Caf.CMS(疯狂蚂蚁CMS) 是一个免费的. 开源,功能全面的CMS(内容管理系统).定位CMS也有点狭义呢,因为Caf.CMS是基于国外SmartStore.NET 开源商城源码的基础上改造而成 ...

随机推荐

  1. JavaScript – Decimal

    前言 之前就写过一篇 decimal, double, float, 但有点杂乱, 这篇把 JS 的部分独立写成一篇整理版. 参考 JavaScript 浮点数运算的精度问题 关于JavaScript ...

  2. FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher

    ​EasyPusher是一款国产的RTSP直播录制推流客户端工具,它支持Windows.Linux.Android.iOS等操作系统.EasyPusher采用RTSP推流协议,其中安卓版EasyPus ...

  3. 系统编程-进程-当fork遇到管道,可能碰撞出什么?

    第一部分 1. 直接上代码 #include <stdio.h> #include <unistd.h> #include <stdlib.h> int globv ...

  4. [33](CSP 集训)CSP-S 模拟 4

    A 商品 对于任意一组相邻的数 \((l,r)\ (l\le r)\),可以发现,不管怎么压缩,都会有 \(l\le r\),也就是说,相邻两个数的大小关系是不变的 那么我们就可以把 \(\sum(| ...

  5. 【译】通过新的 WinUI 工作负荷和模板改进,深入原生 Windows 开发

    在 Build 2024 上,WinUI 团队宣布将重新关注 WinUI,将其作为我们推荐的原生 Windows 应用开发的首要应用开发框架之一.为了使其尽可能无缝和轻松地进入编码,我们创建了一个新的 ...

  6. Outlook无法接收发送邮件,报错超出最大空间 的解决办法

    事件起因: 某客户的outlook邮箱无法接收/发送邮件,报错为:存储区已达到最大大小     解决办法: 解决思路:新建一个数据文件来接收发送邮件   具体操作: 文件-账户配置-数据文件-新建(更 ...

  7. Hive--hbase--spark

    hive创建hbase表 create external table events.hb_train( row_key string, user_id string, event_id string, ...

  8. LeetCode 564. Find the Closest Palindrome (构造)

    题意: 给一个数字n 求离n最近(且不等)的回文串 存在多个答案返回最小的 首先很容易想到 将数字分为两段,如 12345 -> 123/45,然后将后半段根据前面的进行镜像重置 123/45 ...

  9. linux 内核中READ_ONCE宏定义

    在Linux内核编程中,READ_ONCE 宏用于确保从内存中读取一个变量的值时,编译器不会对这个读取操作进行优化,从而保证了读取操作的原子性.这个宏通常在需要防止编译器优化.多线程或中断上下文中使用 ...

  10. Java日期时间API系列14-----Jdk8中java.time包中的新的日期时间API类,java日期计算1,获取年月日时分秒等

    通过Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析 ,可以看出java8设计非常好,实现接口Temporal, Tempora ...