У цій статті описано, як отримати зображення з документа Word на C#. Він містить відомості про конфігурацію середовища, необхідну для тестування зразка коду, покрокову процедуру та придатний для виконання зразок коду, який читає файл DOCX і зберігає кожне зображення як файл PNG. Тут також надано пояснення класів, методів і властивостей, необхідних для вилучення всіх зображень із документа Word на C#.
Кроки для вилучення зображень із Word у C#
- Створіть середовище для додавання Aspose.Words for .NET для вилучення зображень
- Завантажте вихідний файл Word із зображеннями в об’єкт класу Document
- Отримайте колекцію фігур із документа Word за допомогою методу GetChildNodes()
- Перегляньте всі елементи колекції форм
- Збережіть кожну фігуру, яка має зображення, як окреме зображення
Ці кроки містять відомості про те, щоб витягти зображення з документа Word на C#. Спочатку вихідний файл Word завантажується в об’єкт класу Document, а потім з нього здійснюється доступ до колекції фігур за допомогою методу GetChildNodes(), який приймає перелічувач NodeType.Shape як аргумент. На наступному кроці ця колекція повторюється, і кожна фігура перевіряється на наявність зображення та, якщо знайдено, зберігається як окремий файл зображення.
Код для вилучення зображень із файлу Word у C#
using System; | |
using Aspose.Words; | |
using Aspose.Words.Drawing; | |
namespace AsposeProjects | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to extract all the images from a Word document | |
{ | |
// Initialize licenses | |
Aspose.Words.License licWords = new Aspose.Words.License(); | |
licWords.SetLicense("Aspose.Total.lic"); | |
// Load a document having images in it | |
Document wordDocument = new Document("WordFileWithImages.docx"); | |
// Get collection of pictures from the Word document | |
NodeCollection allShapes = wordDocument.GetChildNodes(NodeType.Shape, true); | |
int index = 0; | |
// Iterate through all the pictures and save as a separate image file | |
foreach (Shape shape in allShapes) | |
{ | |
if (shape.HasImage) | |
{ | |
string imageFile = "Aspose_" + (index++).ToString() + "_" + shape.Name + ".png"; | |
shape.ImageData.Save(imageFile); | |
} | |
} | |
Console.WriteLine("Done"); | |
} | |
} | |
} |
Цей код демонструє процес вилучення зображень із документа Word на C#, який використовує об’єкт класу Document, що має різні функції перевантаження, які підтримують багато функцій, як-от налаштування кодування, параметрів шрифту, параметрів мови та багато іншого. Подібним чином ви можете отримати інші типи дочірніх вузлів за допомогою методу GetChildNodes(), як-от розділи, верхній/нижній колонтитул, таблицю, рядок, клітинку та абзаци, щоб назвати лише деякі.
У цій статті пояснюється, як витягти зображення з файлу Word. Якщо ви хочете дізнатися, як додавати зображення, перегляньте статтю на як додати зображення в документ Word за допомогою C#.