是的,iText 是一个用于处理 PDF 文件的库,它提供了丰富的功能,包括 PDF 分割。在 C# 中,你可以使用 iTextSharp 或 iText 7(iText 的最新版本)来实现 PDF 分割。
以下是一个使用 iText 7 进行 PDF 分割的简单示例:
using System;
using System.IO;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas;
using iText.Kernel.Pdf.Writer;
namespace PdfSplitExample
{
class Program
{
static void Main(string[] args)
{
string inputPath = "path/to/your/input.pdf";
string outputPath = "path/to/your/output.pdf";
SplitPdf(inputPath, outputPath);
}
public static void SplitPdf(string inputPath, string outputPath)
{
using (PdfReader reader = new PdfReader(inputPath))
{
int numberOfPages = reader.NumberOfPages;
for (int i = 1; i <= numberOfPages; i++)
{
string pageNumber = i.ToString();
string outputPathPage = $"{outputPath}_{pageNumber}.pdf";
SplitAndSavePdf(reader, outputPathPage, 0, i - 1);
}
}
}
public static void SplitAndSavePdf(PdfReader reader, string outputPath, int startPage, int endPage)
{
using (PdfWriter writer = new PdfWriter(outputPath))
{
PdfDocument pdfDocument = new PdfDocument(reader, writer);
for (int i = startPage; i <= endPage; i++)
{
pdfDocument.AddPage(pdfDocument.GetPage(i));
}
pdfDocument.Close();
}
}
}
}
在这个示例中,我们首先读取输入 PDF 文件,然后遍历每一页并将其保存到单独的 PDF 文件中。请注意,这个示例仅适用于简单的 PDF 分割,如果你需要更复杂的分割功能,你可能需要查阅 iText 官方文档以获取更多详细信息。