Obrazy są powszechnie używane do przedstawiania ważnych informacji w dokumentach Word DOC. Włączenie obrazów obok tekstu zwiększa atrakcyjność treści. W niektórych przypadkach może być konieczne programowe wyodrębnienie obrazów osadzonych w dokumentach DOC. Aby to osiągnąć, w tym artykule opisano, jak wyodrębnić obrazy z DOC w Javie.
Java API do wyodrębniania obrazów z plików DOC
Aspose.Words for Java to potężny i bogaty w funkcje interfejs API do tworzenia, manipulowania i konwertowania dokumentów MS Word. Dlatego użyjemy tego API do wyodrębnienia obrazów z dokumentów DOC. Możesz pobrać plik JAR interfejsu API lub zainstalować go w swojej aplikacji Java, korzystając z następujących konfiguracji Mavena.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>21.11</version>
<type>pom</type>
</dependency>
Jak wyodrębnić obrazy z DOC w Javie
Obrazy w dokumencie DOC są reprezentowane za pomocą obiektów kształtu. Dlatego, aby pobrać obrazy, będziesz musiał przetworzyć każdy kształt w dokumencie. Poniżej przedstawiono kroki, aby wyodrębnić obrazy z pliku DOC w Javie.
- Najpierw załaduj plik DOC przy użyciu klasy Document.
- Następnie umieść wszystkie kształty w NodeCollection obiektu przy użyciu metody Document.getChildNodes(NodeType.SHAPE, Boolean).
- Przejrzyj odzyskane kształty.
- W każdej iteracji sprawdź, czy kształt ma obraz, używając metody Shape.hasImage().
- Na koniec wyodrębnij obraz i zapisz go za pomocą metody Shape.getImageData().save(string).
Poniższy przykładowy kod pokazuje, jak wyodrębnić obrazy z dokumentu DOC w Javie.
// Załaduj dokument Worda
Document doc = new Document("Document.docx");
// Zdobądź wszystkie kształty
NodeCollection<Shape> shapes = (NodeCollection<Shape>) doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;
// Przejrzyj kolekcję kształtów
for (Shape shape : shapes) {
// Sprawdź, czy kształt ma obraz
if (shape.hasImage()) {
// Wyodrębnij i zapisz obraz
String imageFileName = String.format(
"Image.ExportImages.{0}_out_{1}", imageIndex, FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
shape.getImageData().save(dataDir + imageFileName);
imageIndex++;
}
}
Java DOC Image Extractor — uzyskaj bezpłatną licencję
Uzyskaj bezpłatną tymczasową licencję, aby używać Aspose.Words for Java bez ograniczeń ewaluacyjnych.
Wniosek
W tym artykule nauczyłeś się, jak wyodrębnić obrazy z dokumentu DOC w Javie. Ponadto przykładowy kod pokazał, jak wyodrębnić obrazy z pliku DOC i zapisać je w żądanej lokalizacji. Poza tym Aspose.Words for Java zapewnia szeroki zakres funkcji do manipulacji dokumentami. Aby zapoznać się z tymi funkcjami, możesz odwiedzić dokumentację. Możesz także zadawać pytania za pośrednictwem naszego forum.
Zobacz też
- Twórz dokumenty Worda od podstaw w Javie
- Generuj dokumenty Word z szablonów w Javie
- Konwertuj pliki Word na PDF w Javie
Info: Być może zainteresuje Cię inne API Javy (Aspose.Slides for Java), które pozwala konwertować prezentacje (do plików PDF, dokumenty Word, itp.) oraz importować obrazy lub innych dokumentów do prezentacji.