Pdfium.Net.Free 一个免费的Pdfium的 .net包装器--概述

PdfiumViewer 是一个伟大的项目,可惜仓库现已经归档,This repository has been archived by the owner on Aug 2, 2019. It is now read-only.

I regret to announce I'm archiving this project. I haven't been able to spend any real time on this for a long time now, and must face the fact I'm not in a position to properly support this project.

原地址:

PdfiumViewer:https://github.com/pvginkel/PdfiumViewer

PDFium:https://pdfium.googlesource.com/pdfium/

PdfiumViewer 初衷是为了渲染pdf,打印、预览,但是仅支持.netfarmwork,局限性比较大,所以根据PDFium公开的函数(见图1)全部做了PInvoke的封装(见图2),最终转成方便操作的对象(见图3)。

包装后的Pdfium.Net.Free已发布到nuget(见图4),

支持

  • .NETFramework 4.0

  • .NETFramework 4.5

  • .NETStandard 2.0

也可通过下命令安装使用

复制代码
NuGet\Install-Package Pdfium.Net.Free -Version 3.0.0.3-alpha

此nuget包直接引用最新的Pdfium.dll,无需手动烤入,内还包含一个测试用例(见图5Readme)。

如需要PdfiumViewer原有的预览功能,可通过nuget下载

复制代码
NuGet\Install-Package PdfiumViewer.Free -Version 3.0.0.3-alpha

也可点此下载源码,自行编译后使用。

PdfiumViewer镜像:https://github.com/1000374/PdfiumViewer

功能说明:

Pdfium.Net.Free:

  1. 拆分、合并、插入、替换pdf
  2. 导出缩略图
  3. 获取签名信息
  4. 添加水印
  5. n页合并成1页
  6. 新建pdf文档
  7. 新建pdf页
  8. 向pdf添加文字(支持添加字库子集,减少pdf大小)
  9. 向pdf添加图片
  10. 转换pdf为图片
  11. 转换pdf指定区域为图片
  12. 提取指定区域的文本
  13. 提取当前页的文本
  14. 获取签名信息
  15. 待扩展功能~~

PdfiumViewer比默认库多的功能示例:

  1. 点击pdf上的连接
  2. 预览pdf内的注释
  3. 可直接获取框选区域内的文本
  4. 可直接渲染框选区域的图片
  5. 拆分、合并、插入、替换pdf
  6. 导出缩略图
  7. 获取签名信息
  8. 添加水印
  9. n页合并成1页
  10. 新建pdf文档
  11. 新建pdf页
  12. 向pdf添加文字(支持添加字库子集,减少pdf大小)
  13. 向pdf添加图片

可以点此下载源码

后续文档详细介绍此

PDFium公开的函数:(图1)

PInvoke:(图2)

映射的对象:(图3)

Pdfium.Net.Free的nuget包(图4)

nuget内容(图5):

相关推荐
开开心心就好6 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
软件工程小施同学8 小时前
区块链论文速读 CCF A--VLDB 2025 (1) 附pdf下载
pdf·区块链
缺点内向1 天前
C#: 告别繁琐!轻松移除Word文档中的文本与图片水印
c#·自动化·word·.net
2501_930707781 天前
使用 C# .NET 从 PowerPoint 演示文稿中提取背景图片
c#·powerpoint·.net
向上的车轮1 天前
为什么.NET(C#)转 Java 开发时常常在“吐槽”Java:checked exception
java·c#·.net
波波0071 天前
每日一题:.NET 的 GC是如何分代工作的?
算法·.net·gc
Java面试题总结2 天前
基于 Java 的 PDF 文本水印实现方案(iText7 示例)
java·python·pdf
傻啦嘿哟2 天前
Python操作PDF页面详解:删除指定页的完整方案
开发语言·python·pdf
波波0072 天前
每日一题:中间件是如何工作的?
中间件·.net·面试题
无风听海2 天前
.NET 10之可空引用类型
数据结构·.net