IRONSOFTWAREHOME

使用IronWord與C#從DOCX中提取圖像

Ahmad Sohail
Ahmad Sohail
Updated: 2026年5月9日

IronWord的ExtractImages()方法使您能夠程式化地從Word文件中提取所有嵌入的圖像,從而存取圖像資料和元資料,如尺寸和格式,以供保存或處理。

快速入門:使用C#從DOCX中提取圖像
  1. 1Install IronWord with NuGet Package Manager

    PM > Install-Package IronWord

  2. 2複製並運行這段程式碼片段。

    // Install IronWord: Install-Package IronWord
    using IronWord;
    using IronSoftware.Drawing;
    
    // Load your Word document
    WordDocument doc = new WordDocument("document.docx");
    
    // Extract all images
    var images = doc.ExtractImages();
    
    // Save each image with custom naming
    int imageIndex = 0;
    foreach (var image in images)
    {
        // Cast to AnyBitmap to access SaveAs method
        ((AnyBitmap)image.Image).SaveAs($"output-{imageIndex}.png");
    
        // Access image properties
        Console.WriteLine($"Image {imageIndex}: {image.Width}x{image.Height}");
        imageIndex++;
    }
    C#
  3. 3部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronWord,透過免費試用
    arrow pointer

從Word文件中提取圖像是內容遷移、媒體管理和程式化文件處理的常見要求。 無論您是在構建內容管理系統、自動化文件工作流程還是建立數位檔案,IronWord簡化了對嵌入圖像的存取,使它們可以通過尺寸和格式等屬性保存、重用或分析。

開始使用IronWord


如何從Word文件中提取圖像?

使用IronWord從Word文件中提取圖像是簡單的。 文件embedded_images.docx將被用作範例文件,其中包括3個不同頁面上的5張圖像。 下面的程式碼片段定義了使用ExtractImages()方法進行圖像提取過程的核心工作流。

當使用文件處理庫時,了解許可要求是至關重要的,以確保您的應用程式符合使用條款。 IronWord遵循與其他Iron產品類似的許可模式,提供永久許可和全面的支持選項。 對於生產部署,您將需要應用許可金鑰來移除任何水印或限制。

using System;
using IronWord;
using IronSoftware.Drawing;

// Load an existing Word document
WordDocument doc = new WordDocument("embedded_images.docx");

// Extract all images from the document
var images = doc.ExtractImages();

// Iterate through extracted images
int count = 0;
foreach (var image in images)
{
    // Save each image to disk
    string fileName = $"extracted-image-{count}.png";
    ((AnyBitmap)image.Image).SaveAs(fileName);

    Console.WriteLine($"Extracted image {count}:");
    Console.WriteLine($"Width: {image.Width}");
    Console.WriteLine($"Height: {image.Height}");
    Console.WriteLine($"Saved as: {fileName}");

    count++;
}

Console.WriteLine($"Total images extracted: {count}");

ExtractImages方法返回一個可枚舉的圖像物件集合,每個物件包含完整的圖像資料以及元資料。 要保存圖像,請將SaveAs方法。 這需要將using IronSoftware.Drawing;新增到您的命名空間聲明中。

這種方法允許靈活的處理工作流——您可以將圖像保存到磁碟,如上所示,將其轉換為不同的格式,或直接流式傳輸到雲儲存服務。 該方法處理常見嵌入在Word文件中的多種圖像格式,包括JPEG、PNG、BMP和GIF。

範例文件看起來如何?

帶嵌入圖像的Word文件:谷歌標誌、人頭剪影、星系場景、獅子和禪石

我應該期待什麼輸出?

除錯控制台顯示提取的5張圖像,其尺寸和文件名從extracted-image-0.png到extracted-image-4.png

提取的圖像保留其原始格式(例如.png或其他格式)並可以與適當的文件擴展名一起保存。 您可以遍歷文件中的所有圖像,或者根據您的需求針對特定部分。

高級圖像提取場景

除基本提取外,IronWord的圖像處理功能還支持幾個開發人員在生產應用中經常遇到的高級場景:

批處理多個文件:在處理大量文件時,您可以實施並行處理,以同時從多個Word文件中提取圖像。 這種方法顯著減少了文件檔案或內容遷移項目的處理時間。

圖像格式轉換:提取的圖像物件支持格式之間的轉換。 您可以從Word文件中提取JPEG,並將其保存為PNG以進行網頁優化,或者轉換為WebP以適應現代瀏覽器。

元資料保留:每個提取的圖像保留重要的元資料,包括尺寸、解析度和色深。 此資訊在實施圖像優化管道或維持應用的質量標準時證明有價值。

對於需要持續支持和定期更新的企業應用程式,考慮探索提供持續存取新功能和優先支持的許可擴展。 如果您的專案範圍擴大,升級選項允許無縫擴展,以涵蓋其他開發者或部署位置。

與文件工作流的整合

圖像提取通常是更大文件處理工作流的一部分。 考慮這些常見的整合模式:

內容管理系統:在文件上傳時提取圖像,以建立縮略圖預覽、構建圖像庫或填充媒體庫。 提取的圖像可以編入索引以實現搜尋功能,或標記為文件元資料。

文件轉換管道:在將Word文件轉換為其他格式時,提取的圖像可以單獨處理以實現最佳質量。 這種分離允許針對特定格式的優化——例如,將不同的壓縮設置應用於網頁和列印輸出。

質量保證工作流程:自動提取可系統化地審查嵌入圖像,以符合品牌指南、解析度要求或文件大小限制。 您可以在發佈前標記包含低解析度或格式不正確的圖像的文件。

為了隨時了解最新的文件處理能力和改進,請定期查看產品變更日誌。 新版本經常包含性能提升和擴展的格式支持,這可以使您的圖像提取工作流程受益。

性能考量

在處理包含大量或高解析度圖像的文件時,考慮這些性能優化策略:

記憶體管理:分批處理圖像,而不是同時將所有圖像載入到記憶體中。 這種方法可防止在處理大型文件或高解析度圖像時出現記憶體耗盡情況。

異步處理:對I/O操作實施async/await模式,特別是在將提取的圖像保存到磁碟或網路儲存時。 這可以讓您的應用程式在長時間的提取操作中保持響應。

選擇性提取:如果您只需要特定的圖像,請考慮根據圖像屬性或文件結構實施篩選,以避免處理不必要的內容。

強大的API設計確保不同文件型別和圖像格式的一致行為,使將可靠的圖像提取功能整合到您的.NET應用程式中變得簡單。

常見問題

如何在C#中從DOCX文件中提取圖像?

您可以使用IronWord的ExtractImages()方法從DOCX文件中提取圖像。只需使用WordDocument doc = new WordDocument("document.docx")載入您的Word文件,然後調用doc.ExtractImages()以檢索所有嵌入圖像。每個圖像可以使用SaveAs()方法儲存,並使用您偏好的格式和檔名稱。

從Word文件中提取圖像時可以存取哪些圖像屬性?

IronWord提供存取重要圖像元資料的功能,包括寬度和高度。ExtractImages()方法返回一個包含原始圖像資料和這些元資料屬性的圖像物件集合,允許您根據其特徵程式化地分析或處理圖像。

我可以將提取的圖像儲存為不同的格式嗎?

是的,IronWord允許您將提取的圖像儲存為不同的格式。對每個圖像物件使用SaveAs()方法,並指定您想要的檔名稱及相應的副檔名(例如,.png,.jpg)。程式庫將根據您提供的檔副檔名自動進行格式轉換。

如何安裝程式庫來提取Word文件中的圖像?

使用命令:Install-Package IronWord,通過NuGet包管理器安裝IronWord。一旦安裝完成,將'using IronWord;'新增到您的C#文件中,以存取圖像提取功能和其他文件處理功能。

是否可以從多頁的Word文件中提取圖像?

可以,IronWord的ExtractImages()方法可以從整個Word文件中提取所有圖像,無論它包含多少頁。該方法返回整個文件中找到的所有嵌入圖像的完整集合,無論它們位於單一頁面上還是分佈在多個頁面上。

How does IronWord handle high-resolution images or documents with numerous images during extraction?

IronWord supports memory management and asynchronous processing. This allows efficient handling of high-resolution images or documents with numerous images by using batch processing and `async/await` for I/O operations.

Can I filter which images to extract from a Word document using IronWord?

Yes, IronWord allows you to filter images based on their properties or document structure, enabling selective extraction of only the images you need.

How does IronWord integrate with content management systems for image extraction?

IronWord facilitates integration with content management systems by allowing extracted images to be used for creating previews, building galleries, or populating media libraries while linking them to document metadata.

What are some advanced scenarios supported by IronWord's image extraction capabilities?

IronWord's advanced image extraction capabilities include batch processing, image format conversion, and metadata preservation, which cater to complex production requirements like content migration and optimization workflows.

Are there licensing requirements for using IronWord in production environments?

Yes, IronWord requires appropriate licensing for production environments. It's crucial to apply license keys to remove any restrictions and consider extensions or upgrades for ongoing support and scalability.

Ahmad Sohail
全端開發人員

Ahmad是一位擁有C#、Python和網頁技術堅實基礎的全端開發人員。他對構建可擴展的軟體解決方案深感興趣,並喜歡探索設計和功能在現實世界應用中的結合。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 56,401版本:2026.9剛剛發布

即時獲取您的30天試用金鑰
無需信用卡或帳戶建立
C# PDF的NuGet程式庫
通過NuGet安裝

版本: 2026.9

PM > Install-Package IronWord
nuget.org/packages/IronWord/
  1. 在方案總覽中右鍵點擊引用,管理NuGet包
  2. 選擇Browse並搜尋“IronWord”
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

  1. 下載並解壓IronWord到如~/Libs的目錄中
  2. 在Visual Studio方案總覽中右鍵點擊引用。選擇Browse,“IronWord.dll”

授權從$999

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預約您的免費現場演示
Booking Badge

全球數百萬工程師信賴

Iron Software的客戶標誌
獲取您的無義務諮詢
完成以下表單或發郵件至sales@ironsoftware.com
您的詳細資訊將始終保持機密。
全球數百萬工程師信賴
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立