SkiaSharp 是一个跨平台的 2D 绘图库,它也可以用于将 PDF 文件转换为图片。以下是使用 SkiaSharp 将 PDF 文件转换为图片的步骤:

  1. 添加 SkiaSharp NuGet 包到项目中。

  2. 创建一个 SKDocument 对象,以便读取 PDF 文件。

using (var document = SKDocument.OpenDocument(pdfFilePath))
{
    var pageCount = document.PageCount;
    for (var i = 0; i < pageCount; i++)
    {
        using (var page = document.GetPage(i))
        {
            // 处理 PDF 页面
        }
    }
}
  1. 创建一个 SKBitmap 对象,以便将 PDF 页面转换为位图图像。
using (var document = SKDocument.OpenDocument(pdfFilePath))
{
    var pageCount = document.PageCount;
    for (var i = 0; i < pageCount; i++)
    {
        using (var page = document.GetPage(i))
        {
            var bitmap = new SKBitmap((int)page.Width, (int)page.Height);
            using (var canvas = new SKCanvas(bitmap))
            {
                canvas.DrawPicture(page.Picture);
            }
            // 处理位图图像
        }
    }
}
  1. 可以将 SKBitmap 对象保存为文件或使用它进行其他操作。
using (var document = SKDocument.OpenDocument(pdfFilePath))
{
    var pageCount = document.PageCount;
    for (var i = 0; i < pageCount; i++)
    {
        using (var page = document.GetPage(i))
        {
            var bitmap = new SKBitmap((int)page.Width, (int)page.Height);
            using (var canvas = new SKCanvas(bitmap))
            {
                canvas.DrawPicture(page.Picture);
            }
            bitmap.Save(imageFilePath, SKEncodedImageFormat.Jpeg, 100);
        }
    }
}

以上就是使用 SkiaSharp 将 PDF 文件转换为图像的基本步骤。根据实际需求,可以对上述代码进行修改和扩展。

SkiaSharp PDF 转图片:完整指南及示例代码

原文地址: https://www.cveoy.top/t/topic/no85 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录