Как извлечь изображения из документа Word в C#

В этой краткой практической статье мы подробно обсудим процедуру извлечения изображений из документа Word на C#. Мы будем использовать DOCX в качестве входного файла для получения изображений. Однако вы также можете предоставить документ в формате DOC для извлечения изображений с помощью языка C#. Далее мы создадим рабочий пример, чтобы показать вам, как получить изображения из файла Word с помощью C#.

Шаги по извлечению изображений из документа Word в C#

  1. Установите пакет GroupDocs.Parser for .NET с веб-сайта NuGet в проекте .NET, чтобы извлечь изображения из документа Word.
  2. Добавьте ссылку на необходимые пространства имен для извлечения изображений из файла Word.
  3. Создайте экземпляр класса Parser для загрузки входного документа DOCX.
  4. Вызвать метод GetImages класса Parser для сбора изображений из документа Word.
  5. Перебрать коллекцию изображений и получить размер, тип и содержимое изображений.

В приведенных выше пунктах мы объяснили каждый шаг по созданию функции извлечения всех изображений из документа Word с помощью C#. Вам нужно будет загрузить исходный файл Word, инициализировав класс Parser после настройки необходимого пакета в диспетчере пакетов NuGet и включения необходимых пространств имен в код. После этого GetImages позволяет вам собирать объект изображений, а затем вы можете перебирать коллекцию для отображения данных изображения.

Код для извлечения изображений из документа Word на С#

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using GroupDocs.Parser;
using GroupDocs.Parser.Data;
namespace ExtractImagesFromWordDocumentInCSharp
{
class Program
{
public static void Main(string[] args) // Main function to extract images from word using C#
{
// Remove the watermark in output
string licensePath = "GroupDocs.Parser.lic";
GroupDocs.Parser.License lic = new GroupDocs.Parser.License();
lic.SetLicense(licensePath);
// Create an instance of Parser class
using (Parser parser = new Parser("sample.docx"))
{
// Extract images
IEnumerable<PageImageArea> images = parser.GetImages();
// Check if images extraction is supported
if (images == null)
{
Console.WriteLine("Images extraction isn't supported");
return;
}
// Iterate over images
foreach (PageImageArea image in images)
{
// Print a page index, rectangle and image type:
Console.WriteLine(string.Format("Page: {0}, R: {1}, Type: {2}", image.Page.Index, image.Rectangle, image.FileType));
}
}
}
}
}

В предыдущем фрагменте кода приложение C# для извлечения изображений из Word разработано для демонстрации работы этой функции. Мы не используем сторонние инструменты для извлечения изображений. Этот пример может быть дополнительно расширен в соответствии с вашими конкретными требованиями, и вы также можете использовать этот пример в любой операционной системе, такой как Windows, macOS и Linux.

В этом посте мы обсудили процесс извлечения изображений из документов Word на C# и разработали для него пример кода. Недавно мы опубликовали статью об извлечении текста из документа Word на C#. Дополнительные сведения см. в руководстве как извлечь текст из документа Word с помощью C #.

 Русский