.NET6环境下的WPF使用SkiaSharp和IText7将PDF转成图片
时间: 2024-02-06 22:03:44 浏览: 440
在 .NET 6 环境下,使用 SkiaSharp 和 iText7 将 PDF 转换为图片可以按照以下步骤进行:
1. 安装 SkiaSharp 和 iText7 Nuget 包。
2. 将 PDF 文件加载到 iText7 的 PdfDocument 对象中。
```csharp
using iText.Kernel.Pdf;
var pdfDoc = new PdfDocument(new PdfReader("path/to/pdf"));
```
3. 获取 PDF 文件的页面数量。
```csharp
int pageCount = pdfDoc.GetNumberOfPages();
```
4. 遍历每个页面,将其转换为 SkiaSharp 的 SKBitmap 对象。
```csharp
using SkiaSharp;
for (int i = 1; i <= pageCount; i++)
{
var page = pdfDoc.GetPage(i);
var pageSize = page.GetPageSize();
var bitmap = new SKBitmap((int)pageSize.GetWidth(), (int)pageSize.GetHeight());
using (var surface = SKSurface.Create(bitmap.Info))
{
page.CopyTo(surface, new iText.Kernel.Geom.Rectangle(0, 0, pageSize.GetWidth(), pageSize.GetHeight()));
surface.Canvas.Flush();
}
// 处理每个页面的 bitmap 对象
}
```
5. 将 SKBitmap 对象保存为图片文件。
```csharp
using System.IO;
using (var stream = new FileStream("path/to/image.png", FileMode.Create))
{
bitmap.Encode(SKEncodedImageFormat.Png, 100).SaveTo(stream);
}
```
以上是将 PDF 转换为 PNG 图片的基本流程,你可以根据需要进行修改和优化。注意,在使用 SkiaSharp 的过程中,你需要根据你的操作系统和平台选择适当的 SkiaSharp Nuget 包。
阅读全文
相关推荐
















