PDF ist eines der beliebtesten Dateiformate und wird von fast allen Unternehmen und Branchen verwendet. PDF-Dokumente können verschiedene Inhalte enthalten, darunter formatierten Text, Bilder, Anmerkungen usw. Oft ist es erforderlich, den Inhalt aus den PDF-Dateien zu extrahieren. Hier in diesem Artikel werden wir besprechen, wie man Bilder programmgesteuert aus PDF-Dokumenten in Java extrahiert.

Java-API zum Extrahieren von Bildern aus PDF-Dateien

GroupDocs bietet GroupDocs.Parser für Java-Entwickler zum Extrahieren von Bildern aus PDF-Dateien. Zusammen mit der PDF-Datei unterstützt dieselbe API das Parsing sowie die Extraktion von Bildern aus verschiedenen anderen Dokumentformaten wie Textverarbeitungsdokumenten, Tabellenkalkulationen, eBooks, Präsentationen, E-Mails, ZIP-Archiven und viele andere Dokumentformate .

Herunterladen oder konfigurieren

Sie können die JAR-Datei aus dem Download-Bereich herunterladen oder einfach die Repository- und Abhängigkeitskonfigurationen für die pom.xml Ihrer Maven-basierten Java-Anwendungen abrufen.

<repository>
    <id>groupdocs-artifacts-repository</id>
    <name>GroupDocs Artifacts Repository</name>
    <url>https://releases.groupdocs.com/java/repo/</url>
</repository>
<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-parser</artifactId>
    <version>22.11</version>
</dependency>

Schritte zum Extrahieren von Bildern aus einem PDF-Dokument in Java

Im Folgenden finden Sie Schritt-für-Schritt-Punkte, die zeigen, wie Sie mit ein paar Zeilen Java-Code Bilder aus der PDF-Datei erhalten.

  1. Erstellen Sie ein neues Projekt.
  2. Laden Sie die API wie oben erwähnt herunter oder aktualisieren Sie auf die neueste API-Version.
  3. Importieren Sie die folgenden Klassen:
import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.PageImageArea;
  1. Laden Sie das PDF-Dokument mit der Klasse Parser.
// PDF-Datei laden
try (Parser parser = new Parser("path/document.pdf")) {
    // Der Bildextraktionscode gehört hierher.
}
  1. Extrahieren Sie alle Bilder aus dem Dokument mit der Methode getImages.
// Bilder aus der geladenen Datei extrahieren
Iterable<PageImageArea> images = parser.getImages();
  1. Greifen Sie auf jedes Bild aus der Sammlung zu und speichern Sie es mit der Speichermethode.
// Speichern Sie die Datei mit ihrer Erweiterung
for (PageImageArea image : images)  {
    image.save(String.format("path/image_%d" + image.getFileType().getExtension(), imageCounter++));
}

Bilder können in verschiedenen Bildformaten wie PNG, JPG, BMP, WebP oder GIF gespeichert werden.

Vollständiger Java-Code – Bildextraktion aus PDF

Hier ist der vollständige Quellcode, mit dem Sie alle Bilder aus der bereitgestellten PDF-Datei abrufen können.

// Bilder aus PDF-Datei in Java extrahieren
try (Parser parser = new Parser("path/document.pdf")) 
{
    // Bilder erhalten
    Iterable<PageImageArea> images = parser.getImages();
    
    // Überprüfen Sie, ob die Bildextraktion unterstützt wird
    if (images == null) 
    {
        System.out.println("Images extraction isn't supported");
        return;
    }
    
    int imageCounter = 0;
    // Extrahierte Bilder iterieren
    for (PageImageArea image : images) 
    {
        image.save(String.format("path/image_%d" + image.getFileType().getExtension(), imageCounter++));
    }
}

Ergebnisse

Beispiel-PDF-Dokument

PDF-Dokument mit zu extrahierenden Bildern.

Extrahierte Bilder

extrahierte Bilder aus dem PDF.

Bei Bedarf wird auch in einem separaten Artikel erklärt, wie Sie Bilder von einer bestimmten Seite eines PDF-Dokuments in Java extrahieren können.

Weiterlesen

Weitere Informationen zur Datenextraktions-Java-API finden Sie in deren Dokumentation. Sie können uns Ihre Fragen über unser Forum mitteilen.

Siehe auch