翻譯|使用教程|編輯:吉煒煒|2025-02-10 13:31:24.060|閱讀 92 次
概述:無論是想在演示文稿中重復使用圖片、存檔重要的圖像,還是提高 PDF 文檔分析的便捷性,都涉及到從 PDF 中提取圖片。在本文中,您將學習如何使用 C# 和 Spire.PDF for .NET 從單個 PDF 頁面或整個文檔中提取圖片。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
無論是想在演示文稿中重復使用圖片、存檔重要的圖像,還是提高 PDF 文檔分析的便捷性,都涉及到從 PDF 中提取圖片。使用 C# 進行 PDF 文檔的圖片提取可以很好地幫助開發人員更高效地管理資源并優化工作流程。
在本文中,您將學習如何使用 C# 和 Spire.PDF for .NET 從單個 PDF 頁面或整個文檔中提取圖片。
首先,您需要添加 Spire.PDF for .NET 包中包含的 DLL 文件作為 .NET 項目中的引用。DLL 文件可以從此鏈接下載或通過 安裝。
PM> Install-Package Spire.PDF
Spire.PDF for .NET 提供了 PdfImageHelper 類,專門用于管理 PDF 文檔中的圖片。該類支持多種操作,例如刪除、替換和提取圖片。
要獲取指定 PDF 頁面上的圖片信息,開發人員可以使用 PdfImageHelper.GetImagesInfo(PdfPageBase page) 方法。獲取圖片信息后,再通過 PdfImageInfo.Image.Save() 方法將圖片保存為文件。
提取指定 PDF 頁面圖片的具體步驟如下:
using Spire.Pdf; using Spire.Pdf.Utilities; using System.Drawing; namespace ExtractImagesFromSpecificPage { class Program { static void Main(string[] args) { // 創建一個 PdfDocument 對象 PdfDocument doc = new PdfDocument(); // 加載一個 PDF 文檔 doc.LoadFromFile("/示例文件.pdf"); // 獲取指定的 PDF 頁面 PdfPageBase page = doc.Pages[1]; // 創建一個 PdfImageHelper 對象 PdfImageHelper imageHelper = new PdfImageHelper(); // 獲取該頁上所有圖片的信息 PdfImageInfo[] imageInfos = imageHelper.GetImagesInfo(page); // 遍歷圖片信息 for (int i = 0; i < imageInfos.Length; i++) { // 獲取指定圖片信息 PdfImageInfo imageInfo = imageInfos[i]; // 獲取該圖片 Image image = imageInfo.Image; // 將圖片保存為 PNG 格式 image.Save("/提取的圖片/圖片-" + i + ".png"); } // 釋放資源 doc.Dispose(); } } }
通過閱讀上文,您已經了解了如何從特定頁面提取圖片。接下來,您可以遍歷 PDF 文檔的每一頁,并提取其中的圖片,從而收集整個文檔中的所有圖片。
從整個 PDF 文檔中提取所有圖片的具體步驟如下:
using Spire.Pdf; using Spire.Pdf.Utilities; using System.Drawing; namespace ExtractAllImages { class Program { static void Main(string[] args) { // 創建一個 PdfDocument 對象 PdfDocument doc = new PdfDocument(); // 加載一個 PDF 文檔 doc.LoadFromFile("/示例文件.pdf"); // 創建一個 PdfImageHelper 對象 PdfImageHelper imageHelper = new PdfImageHelper(); // 聲明一個 int 變量 int m = 0; // 遍歷 PDF 中的所有頁面 for (int i = 0; i<doc.Pages.Count; i++) { // 獲取指定的頁面 PdfPageBase page = doc.Pages[i]; // 獲取該頁上的所有圖片信息 PdfImageInfo[] imageInfos = imageHelper.GetImagesInfo(page); // 遍歷圖片信息 for (int j = 0; j<imageInfos.Length; j++) { // 獲取指定圖片信息 PdfImageInfo imageInfo = imageInfos[j]; // 獲取該圖片 Image image = imageInfo.Image; // 將圖片保存為 PNG image.Save("/提取的圖片/全文圖片-" + m + ".png"); m++; } } // 釋放資源 doc.Dispose(); } } }
慧都是E-iceblue的官方授權代理商,提供Spire系列產品免費試用,咨詢,正版銷售等于一體的專業化服務。
下載|體驗更多E-iceblue產品,請咨詢,或撥打產品熱線:023-68661681
加入E-iceblue技術交流QQ群(767755948),與更多小伙伴一起探討提升開發技能。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網