C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#从PDF提取图片

C#从PDF提取图片的完整流程

作者:用户835629078051

在实际开发中,PDF 文件中常包含文本、表格和图片,图片可能是合同中的签名、发票上的印章,或者报告、宣传资料中的图表,本文将介绍如何使用 Spire.PDF for .NET 提取 PDF 中的图片,需要的朋友可以参考下

引言

在实际开发中,PDF 文件中常包含文本、表格和图片。图片可能是合同中的签名、发票上的印章,或者报告、宣传资料中的图表。

本文将介绍如何使用 Spire.PDF for .NET 提取 PDF 中的图片,并保存为独立图像文件,重点演示 PdfImageHelper 的用法。

1. 为什么需要提取 PDF 图片?

2. 准备工作

  1. 安装 Spire.PDF for .NET(支持 .NET Framework 和 .NET Core):
Install-Package Spire.PDF
  1. 引用命名空间:
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;
using System.IO;

3. 提取 PDF 图片信息

PdfImageHelper 是 Spire.PDF 中用于处理 PDF 图片的核心类,它可以:

示例代码如下:

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System;
using System.Drawing;
using System.IO;

class ExtractPdfImages
{
    static void Main()
    {
        // 加载 PDF 文件
        PdfDocument pdf = new PdfDocument();
        pdf.LoadFromFile("Sample.pdf");

        int imageIndex = 1;

        // 遍历每一页
        foreach (PdfPageBase page in pdf.Pages)
        {
            // 使用 PdfImageHelper 获取页面上的所有图片信息
            PdfImageInfo[] images = PdfImageHelper.GetImages(page);

            foreach (PdfImageInfo info in images)
            {
                // 提取图片对象
                Image img = info.Image;

                // 保存为独立文件
                string fileName = $"Image_{imageIndex}.png";
                img.Save(fileName, System.Drawing.Imaging.ImageFormat.Png);

                Console.WriteLine($"已提取图片: {fileName}");
                imageIndex++;
            }
        }

        Console.WriteLine("PDF 图片提取完成!");
    }
}

4. 高级用法(可选)

例如,只提取第一页的所有图片:

PdfPageBase firstPage = pdf.Pages[0];
PdfImageInfo[] firstPageImages = PdfImageHelper.GetImages(firstPage);

5. 总结

本文介绍了在 C# 中使用 Spire.PDF for .NET 提取 PDF 图片的完整流程:

  1. 加载 PDF 文件
  2. 使用 PdfImageHelper 获取图片信息
  3. 将图片保存为独立文件
  4. 可选:获取位置、大小或按区域提取

通过这种方式,开发者可以快速提取 PDF 中的所有图片,应用于报表处理、合同归档或数据分析场景。

到此这篇关于C#从PDF提取图片的操作指南的文章就介绍到这了,更多相关C#从PDF提取图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文