C# IText7获取Pdf具体一页的PdfDocument
时间: 2024-01-19 18:04:23 浏览: 133
用Itext把数据导出到Pdf文档
在 iText7 中,你可以使用 `PdfDocument` 对象来操作 PDF 文件,包括获取指定页的内容。下面是一个示例代码,展示如何获取指定页的 `PdfDocument` 对象:
```csharp
using iText.Kernel.Pdf;
using System.IO;
class Program
{
static void Main(string[] args)
{
string inputFilePath = "input.pdf";
int pageIndex = 1;
// 创建一个新的 PDF 文档
PdfDocument pdfDoc = new PdfDocument(new PdfReader(inputFilePath));
// 获取指定页的 PDF 文档对象
PdfDocument pageDoc = new PdfDocument(new PdfWriter(new MemoryStream()));
pdfDoc.CopyPagesTo(pageIndex, pageIndex, pageDoc);
// 在这里进行对指定页的操作
// ...
// 关闭 PDF 文档对象
pageDoc.Close();
// 关闭源 PDF 文档对象
pdfDoc.Close();
}
}
```
在以上代码中,我们首先创建了一个源 PDF 文档对象 `pdfDoc`,然后使用 `CopyPagesTo` 方法将指定页复制到一个新的 PDF 文档对象 `pageDoc` 中。在 `pageDoc` 中,我们可以进行任何操作,例如读取、修改或添加内容。完成操作后,我们需要调用 `Close` 方法来关闭 `pageDoc`。
需要注意的是,以上代码中我们使用了一个 `MemoryStream` 对象来作为输出流,这是为了避免在磁盘上创建临时文件。如果需要将输出保存到文件中,可以使用 `PdfWriter` 类的构造函数来指定输出文件路径。
阅读全文