Podczas analizowania plików PDF może być konieczne wyodrębnienie obrazów wraz z tekstem z dokumentów. Aby wykonać tę operację programowo, w tym artykule opisano, jak wyodrębnić obrazy z dokumentów PDF w Javie. Przewodnik krok po kroku wraz z odniesieniami do interfejsu API i przykładowym kodem demonstruje pełną procedurę wyodrębniania obrazu.
Java API do wyodrębniania obrazów z plików PDF — bezpłatne pobieranie
Aby wyodrębnić obrazy z pliku PDF, użyjemy Aspose.PDF for Java. Jest to potężny interfejs API do manipulacji plikami PDF, który zapewnia szeroki zakres funkcji do tworzenia i przetwarzania plików PDF. Możesz pobrać interfejs API lub zainstalować go przy użyciu następującej 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-pdf</artifactId>
<version>21.5</version>
</dependency>
Wyodrębnianie obrazów z pliku PDF w Javie
Poniżej przedstawiono kroki, aby wyodrębnić obrazy z dokumentu PDF za pomocą języka Java.
- Załaduj dokument PDF przy użyciu klasy Document.
- Przejrzyj kolekcję stron dokumentu zwróconego przez metodę Document.getPages().
- Dla każdej strony Page przejrzyj kolekcję XImage, którą ma, używając metody Page.getResources().getImages().
- Utwórz obiekt FileOutputStream, aby zapisać każdy obraz.
Poniższy przykładowy kod pokazuje, jak wyodrębnić obrazy z dokumentu PDF.
// Załaduj dokument PDF
Document pdfDocument = new Document("ImagetoPDF.pdf");
// Zapętlaj strony
for (Page page : pdfDocument.getPages()) {
int imageCounter = 1;
// Zapętlaj obrazy
for (XImage xImage : page.getResources().getImages()) {
try {
// Utwórz strumień plików
java.io.FileOutputStream outputImage = new java.io.FileOutputStream(
page.getNumber() + "_" + imageCounter + ".jpg");
// Zapisz obraz wyjściowy
xImage.save(outputImage);
// Zamknij strumień
outputImage.close();
} catch (java.io.FileNotFoundException e) {
// DO ZROBIENIA: obsługa wyjątku
e.printStackTrace();
} catch (java.io.IOException e) {
// DO ZROBIENIA: obsługa wyjątku
e.printStackTrace();
}
imageCounter++;
}
// Wyzerować licznik
imageCounter=1;
}
Java PDF Image Extractor — uzyskaj bezpłatną licencję
Możesz używać Aspose.PDF for Java bez ograniczeń ewaluacyjnych przy użyciu tymczasowej licencji.
Wniosek
W różnych przypadkach wymagane jest wyodrębnienie obrazów z dokumentów PDF. Aby to osiągnąć, w tym artykule nauczyłeś się, jak wyodrębniać obrazy z plików PDF w Javie. Możesz dowiedzieć się więcej o interfejsie Java PDF API, korzystając z dokumentacji. Możesz również zamieścić swoje pytania na naszym forum.