C#使用Spire.PDF for .NET轻松比较PDF文档
作者:2501_93070778
PDF 已成为跨平台共享和保存文档的标准格式,在工作和日常生活中都扮演着重要角色。然而,创建高质量的 PDF 文档通常需要多次检查与修改。在这种情况下,高效比较 PDF 文件并找出差异 变得尤为重要——它能帮助文档编辑者快速识别不同版本之间的不一致,从而在文档编写与审阅过程中节省大量时间。
本文将演示如何在 C# 程序中使用 Spire.PDF for .NET 轻松比较 PDF 文档。
安装 Spire.PDF for .NET
首先,你需要将 Spire.PDF for .NET 安装包中包含的 DLL 文件添加为 .NET 项目的引用。
这些 DLL 文件可以通过以下两种方式获取:
PM> Install-Package Spire.PDF
在 C# 中比较两个 PDF 文档
借助 Spire.PDF for .NET,开发者可以创建一个 PdfComparer 类的实例,将两个 PdfDocument 对象作为参数传入,然后使用 PdfComparer.Compare(String fileName) 方法来比较这两个文档。比较结果将保存为一个新的 PDF 文件,方便进一步分析或审阅两份 PDF 之间的差异。
生成的对比结果 PDF 文件会在左侧和右侧分别显示两份原始文档,其中:
- 被删除的内容以 红色 标注;
- 新增的内容以 黄色 标注。
示例代码如下:
using Spire.Pdf;
using Spire.Pdf.Comparison;
namespace ExtractTablesToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 PdfDocument 类的对象并加载一个 PDF 文档
PdfDocument pdf1 = new PdfDocument();
pdf1.LoadFromFile("Sample1.pdf");
//创建另一个 PdfDocument 类的对象并加载另一份 PDF 文档
PdfDocument pdf2 = new PdfDocument();
pdf2.LoadFromFile("Sample2.pdf");
//使用这两个文档创建 PdfComparer 类的对象
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
//比较两份文档并将比较结果保存为另一份 PDF 文件
comparer.Compare("output/ComparingResult.pdf");
pdf1.Close();
pdf2.Close();
}
}
}比较两个 PDF 文档的指定页范围
在创建 PdfComparer 类的实例后,开发者还可以使用 PdfComparer.Options.SetPageRange() 方法来设置要比较的页码范围。这样就可以只比较两个 PDF 文档中指定的页面范围,而不是整个文档。
示例代码如下:
using Spire.Pdf;
using Spire.Pdf.Comparison;
namespace ExtractTablesToExcel
{
class Program
{
static void Main(string[] args)
{
//创建 PdfDocument 类的对象并加载一个 PDF 文档
PdfDocument pdf1 = new PdfDocument();
pdf1.LoadFromFile("Sample1.pdf");
//创建另一个 PdfDocument 类的对象并加载另一份 PDF 文档
PdfDocument pdf2 = new PdfDocument();
pdf2.LoadFromFile("Sample2.pdf");
//使用这两个文档创建 PdfComparer 类的对象
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
//设置要比较的页码范围
comparer.Options.SetPageRanges(1, 1, 1, 1);
//比较指定页范围的内容,并将比较结果保存为另一份 PDF 文件
comparer.Compare("output/PageRangeComparingResult.pdf");
pdf1.Close();
pdf2.Close();
}
}
}申请临时许可证
如果你希望移除生成文档中的评估信息,或解除功能限制,请申请一个 30 天试用许可证。
到此这篇关于C#使用Spire.PDF for .NET轻松比较PDF文档的文章就介绍到这了,更多相关C#比较PDF文档内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
