Как да извлечете изображения от Word файл в Java

В този бърз урок ще научим как да извличаме изображения от Word файл в Java. Той съдържа цялата информация, необходима за установяване на средата, подробности за използването на API за писане на приложението и изпълняваем примерен код, който демонстрира процеса за извличане на картини от документ на Word в Java. Освен това ще научите различни опции за персонализиране на процеса, докато зареждате изходния файл DOCX и извличате различни изображения от него като PNG, JPEG и др.

Стъпки за извличане на изображения от Word в Java

  1. Създайте среда за добавяне на Aspose.Words for Java за извличане на изображения
  2. Заредете изходния Word файл с изображения в обекта на клас Document
  3. Вземете колекцията от форми, като използвате метода getChildNodes() в класа Document
  4. Преминете през всички форми в колекцията
  5. Проверете дали формата има изображение, като използвате метода hasImage() в класа Shape
  6. Запазете изображението като отделен файл на диска

Тези стъпки обясняват процеса за извличане на изображения от Word файл в Java. Първо, ресурсите се споделят за установяване на средата, последвано от въведение в класовете, методите и свойствата, необходими за изпълнение на задачата, като класът Document се използва за зареждане на изходния Word файл, а методът getChildNodes() се използва за извличане на всички изображенията от него. И накрая, всеки елемент от колекцията се тества за наличие на изображение и, ако бъде намерено, се записва на диска като отделен файл с изображение.

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

import com.aspose.words.Document;
import com.aspose.words.NodeCollection;
import com.aspose.words.NodeType;
import com.aspose.words.Shape;
import com.aspose.words.FileFormatUtil;
public class AsposeTest {
public static void main(String[] args) throws Exception {//Main function to extract images from a Word file
// Instantiate the license
com.aspose.words.License licPage = new com.aspose.words.License();
licPage.setLicense("Aspose.Total.lic");
//
Document imagesWordFile = new Document("WordFileWithImages.docx");
NodeCollection<Shape> docShapes = (NodeCollection<Shape>) imagesWordFile.getChildNodes(NodeType.SHAPE, true);
int indexForImages = 0;
for (Shape shape : docShapes
) {
if (shape.hasImage()) {
String outputImage = String.format("Image" + indexForImages + FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
shape.getImageData().save(outputImage);
indexForImages++;
}
}
System.out.println("Done");
}
}

Този примерен код демонстрира процеса за извличане на всички изображения от документ на Word в Java. След зареждане на изходния файл на Word, методът getChildNodes() се използва чрез предоставяне на NodeType.SHAPE стойност като аргумент, който връща набора от всички фигури в документа, тъй като класът Shape има метод hasImage(), който проверява съществуването на изображението . След като изображението бъде открито, разширението му се извлича с помощта на shape.getImageData().getImageType() и се използва в името на изходното изображение заедно с опцията за филтриране на изображенията въз основа на техните типове.

В този урок научихме как да вмъкваме картина в MS Word с помощта на Java. Ако искате да научите как да създадете документ на Word от нулата, можете да се обърнете към статията как да създадете Word документ с помощта на Java.

 Български