DEV Community

SirOnly
SirOnly

Posted on

Wie man Bilder aus PDF-Dokumenten in Java extrahiert

Das Extrahieren von Bildern aus PDF-Dokumenten ist eine häufig gestellte Anforderung. Es gibt viele PDF-Bibliotheken, die diese Funktion unterstützen. Eine dieser Bibliotheken ist Free Spire.PDF for Java. In diesem Artikel werden wir diskutieren, wie Sie Free Spire.PDF for Java verwenden können, um Bilder aus PDF-Dokumenten zu extrahieren.

PDF-Bilder extrahieren

Free Spire.PDF for Java zu Ihrem Programm hinzufügen:

Bevor wir beginnen können, müssen wir Free Spire.PDF for Java zu unserem Programm hinzufügen. Hier sind die Schritte dafür:

  1. Laden Sie die Free Spire.PDF for Java-Bibliothek von der offiziellen Website herunter.
  2. Entpacken Sie die heruntergeladene Datei und speichern Sie die Bibliotheksdatei (.jar) an einem geeigneten Ort in Ihrem Projektordner.
  3. Fügen Sie das .jar-File in Ihren Build-Pfad ein. Importieren Sie die Free Spire.PDF-Bibliothek in Ihrem Java-Programm.

Wie man Bilder aus PDF-Dokumenten extrahiert

Jetzt können wir damit beginnen, Bilder aus PDF-Dokumenten zu extrahieren.

  • Schritt 1: Laden Sie das PDF-Dokument, aus dem Sie Bilder extrahieren möchten.
  • Schritt 2: Iterieren Sie durch die Seiten des Dokuments.
  • Schritt 3: Extrahieren Sie die Bilder von jeder Seite und speichern Sie sie im gewünschten Ausgabeverzeichnis.

Hier ist ein vollständiges Java-Beispiel, das den Prozess demonstriert:

import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;

public class ExtractImages {
    public static void main(String[] args) {
        // Laden Sie das PDF-Dokument
        PdfDocument document = new PdfDocument();
        document.loadFromFile("input.pdf");

        // Initialisierung der Bildanzahl
        int imageCount = 0;

        // Iterieren Sie durch die Seiten des Dokuments
        for (int i = 0; i < document.getPages().getCount(); i++) {
            // Abrufen der aktuellen Seite
            PdfPageBase page = document.getPages().get(i);

            // Bilder aus der aktuellen Seite extrahieren
            PdfImageCollection images = page.getImages();

            // Speichern Sie die extrahierten Bilder
            for (int j = 0; j < images.getCount(); j++) {
                BufferedImage image = images.get(j).toImage();
                File output = new File("Image_" + (++imageCount) + ".png");
                try {
                    ImageIO.write(image, "png", output);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }

        // Schließen Sie das PDF-Dokument
        document.close();

        System.out.println("Images extracted successfully!");
    }
}
Enter fullscreen mode Exit fullscreen mode

Dieser Code lädt zunächst das PDF-Eingabedokument und initialisiert einen Bildzähler. Dann durchläuft er jede Seite des Dokuments, extrahiert Bilder von jeder Seite und speichert sie als PNG-Dateien im aktuellen Arbeitsverzeichnis.

Free Spire.PDF für Java bietet viele weitere Funktionen neben der Möglichkeit, Bilder aus PDF-Dokumenten zu extrahieren. Hier sind sechs weitere Funktionen:

Imagine monitoring actually built for developers

Billboard image

Join Vercel, CrowdStrike, and thousands of other teams that trust Checkly to streamline monitor creation and configuration with Monitoring as Code.

Start Monitoring

Top comments (0)

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

👋 Kindness is contagious

Engage with a sea of insights in this enlightening article, highly esteemed within the encouraging DEV Community. Programmers of every skill level are invited to participate and enrich our shared knowledge.

A simple "thank you" can uplift someone's spirits. Express your appreciation in the comments section!

On DEV, sharing knowledge smooths our journey and strengthens our community bonds. Found this useful? A brief thank you to the author can mean a lot.

Okay