Изображения играют важную роль для иллюстрации ключевой информации в документах Word. Более того, они делают документ более привлекательным и улучшают его презентацию. Как программист, вы можете получить работу по извлечению изображений, встроенных в документы Word DOCX или DOC. Для этого в этой статье рассказывается, как программно извлекать изображения из документов Word с помощью C#. Кроме того, вы увидите, как сохранить извлеченные изображения в нужное место.
C# API для извлечения изображений из документов Word
Для извлечения изображений из документов MS Word DOCX/DOC мы будем использовать Aspose.Words for .NET. Это мощный и широко используемый API для создания документов Word и управления ими. Вы можете скачать библиотеку DLL API и добавить ссылку на нее в свое приложение. Кроме того, вы можете установить его напрямую из NuGet с помощью консоли диспетчера пакетов.
PM> Install-Package Aspose.Words
Извлечение изображений из документа Word в C#
В документах Word изображения представлены в виде фигур. Поэтому для извлечения изображений вам придется обработать все фигуры в документе. Ниже приведены шаги для программного извлечения изображений из документа Word DOCX на C#.
- Загрузите файл Word, используя класс Document.
- Получите все фигуры с изображениями в IEnumerable объекта с помощью метода Document.GetChildNodes(NodeType.Shape, Boolean).
- Прокрутите полученные фигуры.
- В каждой итерации извлекайте изображение и сохраняйте его с помощью метода Shape.ImageData.Save(string).
В следующем примере кода показано, как извлекать изображения из документа Word на C#.
// Загрузите документ Word.
Document doc = new Document("Document.docx");
// Узлы формы с установленным флагом «HasImage» содержат и отображают изображения.
IEnumerable<Shape> shapes = doc.GetChildNodes(NodeType.Shape, true)
.OfType<Shape>().Where(s => s.HasImage);
int imageIndex = 0;
// Цикл по фигурам.
foreach (Shape shape in shapes)
{
// Сохраняйте изображения.
string imageFileName =
$"Image_{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
shape.ImageData.Save(imageFileName);
imageIndex++;
}
Попробуйте Aspose.Words для .NET бесплатно
Вы можете получить бесплатную временную лицензию, чтобы попробовать Aspose.Words для .NET без каких-либо ограничений. Получите временную лицензию сейчас.
Вывод
Изображения стали неотъемлемой частью документов Word, которые делают содержимое более привлекательным. Таким образом, Aspose.Words для .NET предоставляет широкий набор функций для добавления изображений в документы Word и управления ими.
В этой статье особое внимание уделялось извлечению изображений из документов Word. С помощью примера кода вы узнали, как программно извлечь каждое изображение из файла Word DOCX/DOC с помощью C#. Кроме того, вы видели, как сохранить извлеченные изображения в нужное место. Вы можете узнать больше об Aspose.Words для .NET, используя документацию. Если у вас возникнут какие-либо вопросы, сообщите нам об этом через наш форум.
Смотрите также
Совет: если вам когда-нибудь понадобится получить документ Word из презентации PowerPoint, вы можете использовать конвертер Aspose Presentation to Word Document.