在 上一篇文章 中,您已经了解了如何将多个 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 文件的每一页。
- 使用 Document 类加载 PDF 文档。
- 遍历 Document.Pages 集合以使用 Page 类访问每个页面。
- 在每次迭代中,创建一个新的 Document,将当前页面添加到文档中,并使用 Document.Save(String) 方法将其保存为 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中拆分偶数页和奇数页的步骤。
- 使用 Document 类加载 PDF 文档。
- 获取要拆分为 Page[] 数组的页面。
- 创建一个新的 Document 并使用 Document.Pages.Add(Page[]) 方法向其中添加页面。
- 使用 Document.Save(String) 方法保存 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 的更多信息。