使用 C# 将 PDF 文件拆分为多个文件

上一篇文章 中,您已经了解了如何将多个 PDF 文件合并为一个 PDF。但是,在某些情况下,您可能需要将单个 PDF 文件拆分为多个文件。您可以将 PDF 的每一页或一组页面拆分为多个 PDF。在本文中,您将学习如何应对此类情况并使用 C# 拆分 PDF 文件。

拆分 PDF C# API - 免费下载

Aspose.PDF for .NET 是一个强大的 PDF 文件操作 API,可让您在 .NET 应用程序中创建、编辑和处理 PDF 文档。此外,该 API 允许您将单个 PDF 拆分为多个文件,并且保真度很高。您可以下载 API 的 DLL 或使用 NuGet 安装它。

PM> Install-Package Aspose.Pdf

使用 C# 拆分 PDF 文件

PDF 拆分标准可以根据您的要求而有所不同。您可以按每个页面或页面集合拆分文档。首先,让我们看看如何拆分 PDF 文件的每一页。

以下代码示例展示了如何使用 C# 拆分 PDF 文档。

// 打开文档
Document pdfDocument = new Document("merged.pdf");

// 页面计数器
int pageCount = 1;

// 循环遍历所有页面
foreach (Aspose.Pdf.Page pdfPage in pdfDocument.Pages)
{
  	// 创建一个新文档
	Document newDocument = new Document();
  
  	// 将页面添加到文档
	newDocument.Pages.Add(pdfPage);
  
  	// 另存为 PDF 
	newDocument.Save("page_" + pageCount + "_out" + ".pdf");
	pageCount++;
}

使用 C# 拆分选定的 PDF 页面

您还可以通过指定页面范围来拆分 PDF。例如,您可以拆分前N页或后N页、偶数页或奇数页等。为了演示,以下是从PDF中拆分偶数页和奇数页的步骤。

以下代码示例展示了如何从 PDF 中拆分页面集合。

// 打开文档
Document pdfDocument = new Document("merged.pdf"); 

// 仅选择偶数页
Aspose.Pdf.Page[] evenPages = pdfDocument.Pages.Where(x => x.Number % 2 == 0).ToArray();

// 只选择奇数页
Aspose.Pdf.Page[] oddPages = pdfDocument.Pages.Where(x => x.Number % 2 != 0).ToArray();

// 将偶数页另存为 PDF
Document newDocument = new Document();
newDocument.Pages.Add(evenPages);
newDocument.Save("split_even_Pages.pdf");

// 将奇数页另存为 PDF
newDocument = new Document();
newDocument.Pages.Add(oddPages);
newDocument.Save("split_odd_Pages.pdf");

结论

在本文中,您学习了如何使用 C# 拆分 PDF 文件。代码示例演示了如何将 PDF 中的每个页面或页面集合拆分为单独的文件。您可以使用 文档 探索有关 .NET PDF API 的更多信息。

也可以看看