В этой краткой практической статье мы подробно обсудим процедуру извлечения изображений из документа Word на C#. Мы будем использовать DOCX в качестве входного файла для получения изображений. Однако вы также можете предоставить документ в формате DOC для извлечения изображений с помощью языка C#. Далее мы создадим рабочий пример, чтобы показать вам, как получить изображения из файла Word с помощью C#.
Шаги по извлечению изображений из документа Word в C#
- Установите пакет GroupDocs.Parser for .NET с веб-сайта NuGet в проекте .NET, чтобы извлечь изображения из документа Word.
- Добавьте ссылку на необходимые пространства имен для извлечения изображений из файла Word.
- Создайте экземпляр класса Parser для загрузки входного документа DOCX.
- Вызвать метод GetImages класса Parser для сбора изображений из документа Word.
- Перебрать коллекцию изображений и получить размер, тип и содержимое изображений.
В приведенных выше пунктах мы объяснили каждый шаг по созданию функции извлечения всех изображений из документа 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 #.