Zum Fußzeileninhalt springen
VERWENDUNG VON IRONPDF FOR JAVA

Wie man PDF-Dateien in Java Vorschau anzeigt

Dieser Artikel zeigt, wie man IronPDF verwendet, um PDF-Dateien innerhalb einer Java-Anwendung vorzuschauen.

IronPDF

IronPDF ist eine leistungsstarke Java-Bibliothek, die schnelle und genaue Operationen bietet und eine hervorragende Wahl für PDF-bezogene Aufgaben wie das Lesen von PDF-Dateien, das Extrahieren von Texten und Bildern, Zusammenführen und Teilen ist.

Mit Hilfe der IronPDF-Bibliothek können Sie PDFs aus HTML, URLs und Zeichenfolgen mit präziser, pixelgenauer Darstellung erstellen.

Voraussetzungen

Um eine Dokumentansicht für PDF-Dokumente in Java zu erstellen, müssen Sie Folgendes einrichten.

  1. JDK (Java Development Kit) und Swing UI-Framework installiert.
  2. Eine Java-IDE (Integrierte Entwicklungsumgebung) wie Eclipse, NetBeans oder IntelliJ IDEA.
  3. IronPDF-Bibliothek für Java (Sie können sie von der IronPDF-Website herunterladen und in Ihr Projekt einbinden).

Einrichtung

  1. Erstellen Sie ein neues Java-Projekt in Ihrer gewählten IDE. Ich verwende IntelliJ IDEA und habe das Projekt mit Maven erstellt.
  2. Fügen Sie die IronPDF Bibliothek mithilfe von Maven zu Ihrem Projekt hinzu, indem Sie die unten aufgeführten Abhängigkeiten in die Datei pom.xml Ihres Projekts einfügen:

    
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>latest_version</version>
    </dependency>
    
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>latest_version</version>
    </dependency>
    XML
  3. Notwendige Importe hinzufügen:

    import com.ironsoftware.ironpdf.PdfDocument;
    
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import javax.swing.border.EmptyBorder;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import java.nio.file.Paths;
    import java.util.ArrayList;
    import java.util.List;
    import com.ironsoftware.ironpdf.PdfDocument;
    
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import javax.swing.border.EmptyBorder;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import java.nio.file.Paths;
    import java.util.ArrayList;
    import java.util.List;
    JAVA

Laden des PDF-Dateiformats

Um PDF-Dokumente anzuzeigen, muss als nächstes die PDF-Datei in diese Java PDF Viewer-Anwendung mithilfe der Klasse PdfDocument geladen werden.

public class PDFPreview extends JFrame {

    private List<String> imagePaths = new ArrayList<>();

    private List<String> ConvertToImages() throws IOException {
        // Load the PDF document from a file
        PdfDocument pdfDocument = PdfDocument.fromFile(Paths.get("example.pdf"));
        // Convert the PDF pages to a list of BufferedImages
        List<BufferedImage> extractedImages = pdfDocument.toBufferedImages();
        int i = 1;
        // Iterate over the extracted images and save each to an image file
        for (BufferedImage extractedImage : extractedImages) {
            String fileName = "assets/images/" + i + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
            // Store the file paths in the image paths list
            imagePaths.add("assets/images/" + i + ".png");
            i++;
        }
        return imagePaths;
    }
}
public class PDFPreview extends JFrame {

    private List<String> imagePaths = new ArrayList<>();

    private List<String> ConvertToImages() throws IOException {
        // Load the PDF document from a file
        PdfDocument pdfDocument = PdfDocument.fromFile(Paths.get("example.pdf"));
        // Convert the PDF pages to a list of BufferedImages
        List<BufferedImage> extractedImages = pdfDocument.toBufferedImages();
        int i = 1;
        // Iterate over the extracted images and save each to an image file
        for (BufferedImage extractedImage : extractedImages) {
            String fileName = "assets/images/" + i + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
            // Store the file paths in the image paths list
            imagePaths.add("assets/images/" + i + ".png");
            i++;
        }
        return imagePaths;
    }
}
JAVA

Vorschau von PDF-Dateien in Java, Abbildung 1: Die Ausgabedatei im PDF-Format Die Ausgabe-PDF-Datei

Zu Bildern konvertiert:

Vorschau von PDF-Dateien in Java, Abbildung 2: PDF-Datei in Bilder konvertieren PDF-Datei in Bilder konvertieren

Erstellen eines PDF-Viewer-Fensters

Nun können Sie die konvertierten Bilder in einem Vorschaufenster mit Java Swing-Komponenten anzeigen.

public class PDFPreview extends JFrame {
    private JPanel imagePanel;
    private JScrollPane scrollPane;

    public PDFPreview() {
        try {
            // Convert the PDF to images and store the image paths
            imagePaths = this.ConvertToImages();
        } catch (Exception e) {
            e.printStackTrace();
        }

        // Create imagePanel
        imagePanel = new JPanel();
        imagePanel.setLayout(new BoxLayout(imagePanel, BoxLayout.Y_AXIS));

        // Add images to the panel
        for (String imagePath : imagePaths) {
            ImageIcon imageIcon = new ImageIcon(imagePath);
            JLabel imageLabel = new JLabel(imageIcon);
            imageLabel.setBorder(new EmptyBorder(10, 10, 10, 10));
            imagePanel.add(imageLabel);
        }

        // Create the scroll pane and add imagePanel to it
        scrollPane = new JScrollPane(imagePanel);
        scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);

        // Set up the frame
        getContentPane().add(scrollPane);
        setTitle("PDF Viewer");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }
}
public class PDFPreview extends JFrame {
    private JPanel imagePanel;
    private JScrollPane scrollPane;

    public PDFPreview() {
        try {
            // Convert the PDF to images and store the image paths
            imagePaths = this.ConvertToImages();
        } catch (Exception e) {
            e.printStackTrace();
        }

        // Create imagePanel
        imagePanel = new JPanel();
        imagePanel.setLayout(new BoxLayout(imagePanel, BoxLayout.Y_AXIS));

        // Add images to the panel
        for (String imagePath : imagePaths) {
            ImageIcon imageIcon = new ImageIcon(imagePath);
            JLabel imageLabel = new JLabel(imageIcon);
            imageLabel.setBorder(new EmptyBorder(10, 10, 10, 10));
            imagePanel.add(imageLabel);
        }

        // Create the scroll pane and add imagePanel to it
        scrollPane = new JScrollPane(imagePanel);
        scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);

        // Set up the frame
        getContentPane().add(scrollPane);
        setTitle("PDF Viewer");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }
}
JAVA

Den Hauptklassenkonstruktor aufrufen

Fügen Sie abschließend den folgenden Code in die main-Methode der Klasse PDFPreview ein:

public static void main(String[] args) {
    // Run the PDF viewer in the Event Dispatch Thread
    SwingUtilities.invokeLater(
        PDFPreview::new
    );
}
public static void main(String[] args) {
    // Run the PDF viewer in the Event Dispatch Thread
    SwingUtilities.invokeLater(
        PDFPreview::new
    );
}
JAVA

Code-Erklärung

  1. PDFPreview erweitert JFrame, einen Top-Level-Container für die Fenstererstellung.
  2. Deklarierte Instanzvariablen: imagePanel, scrollPane und imagePaths.
  3. ConvertToImages() nimmt die PDF-Datei example.pdf entgegen und wandelt sie in eine Reihe von Bildern um. Der PdfDocument lädt die PDF-Datei und konvertiert jede Seite in ein BufferedImage, speichert dann jede als PNG im Verzeichnis assets/images/ und fügt die Pfade zu imagePaths hinzu.
  4. PDFPreview() initialisiert die Anwendung. Es ruft ConvertToImages() auf, um imagePaths zu füllen.
  5. imagePanel wird initialisiert und sein Layout als vertikales Box-Layout festgelegt.
  6. Es durchläuft imagePaths und erstellt für jedes Bild ImageIcon, fügt diese zu JLabel hinzu und fügt imagePanel Beschriftungen hinzu.
  7. Der Quellcode erzeugt JScrollPane und setzt imagePanel als dessen Viewport.
  8. Anschließend fügt der Code scrollPane zum Inhaltsbereich des Frames hinzu, legt den Titel des Frames fest, bestimmt die Standard-Schließfunktion, packt die Komponenten, zentriert den Frame auf dem Bildschirm und macht ihn sichtbar.
  9. main() ist der Einstiegspunkt des Programms. Es ruft den Konstruktor PDFPreview mit Hilfe von SwingUtilities.invokeLater() auf, um sicherzustellen, dass die Swing-Komponenten im Event Dispatch Thread, dem dedizierten Thread für GUI-Operationen, erstellt und geändert werden.

Führen Sie nun das Programm aus und der PDF-Dokument-Dateibetrachter wird mit dem geladenen PDF-Dokument angezeigt.

Vorschau von PDF-Dateien in Java, Abbildung 3: Die Ausgabedatei im PDF-Format Die Ausgabe-PDF-Datei

Abschluss

Dieser Artikel zeigte, wie man IronPDF for Java-basierte Anwendungen verwendet, um PDF-Dateien innerhalb einer Java-Anwendung vorzuschauen, und wie man auf eine PDF-Datei zugreift und diese anzeigt.

Mit IronPDF können Sie problemlos die Vorschaufunktion für PDF-Dateien in Ihre Java-Anwendung integrieren. Für detaillierte Anleitungen und Beispiele zur Nutzung von IronPDF for Java können Sie auf dieses Beispiel verweisen. Für das Java PDF-Leser-Tutorial besuchen Sie diesen Artikel, um PDF-Dateien zu lesen.

IronPDF ist kostenlos für Entwicklungszwecke. Um mehr über die Lizenzierungsdetails zu erfahren, können Sie die bereitgestellte Lizenzseite besuchen. Eine kostenlose Testversion für die kommerzielle Nutzung ist ebenfalls verfügbar.

Häufig gestellte Fragen

Wie kann ich PDF-Dateien in einer Java-Anwendung vorschauen?

Sie können PDF-Dateien in einer Java-Anwendung vorschauen, indem Sie IronPDF verwenden, um PDF-Seiten in Bilder zu konvertieren und diese Bilder dann mit Java Swing-Komponenten anzuzeigen. Dies beinhaltet das Laden einer PDF mit der PdfDocument-Klasse, das Umwandeln von Seiten in BufferedImage und das Verwenden eines JPanel und JScrollPane, um sie anzuzeigen.

Was sind die Schritte zum Integrieren einer PDF-Bibliothek in mein Java-Projekt?

Um IronPDF in Ihr Java-Projekt zu integrieren, fügen Sie die Bibliothek als Maven-Abhängigkeit in die pom.xml-Datei Ihres Projekts ein, mit der Gruppen-ID 'com.ironsoftware' und der Artefakt-ID 'ironpdf'. Stellen Sie sicher, dass Sie JDK und ein Java-IDE installiert haben.

Wie konvertiere ich PDF-Seiten in Bilder mit Java?

Mit IronPDF können Sie PDF-Seiten in Bilder konvertieren, indem Sie das PDF-Dokument mit der PdfDocument-Klasse laden und jede Seite in ein BufferedImage umwandeln. Diese Bilder können dann als PNG-Dateien für die weitere Verwendung gespeichert werden.

Welche Java-Komponenten werden benötigt, um PDF-Seiten als Bilder anzuzeigen?

Um PDF-Seiten als Bilder in Java anzuzeigen, können Sie Java Swing-Komponenten verwenden, insbesondere ein JPanel, um die Bilder zu halten, und ein JScrollPane, um das Scrollen durch die Bilder zu ermöglichen.

Warum ist der Event Dispatch Thread wichtig, wenn ein PDF-Viewer in Java erstellt wird?

Der Event Dispatch Thread (EDT) ist entscheidend, da er sicherstellt, dass alle Swing-Komponenten auf einem dedizierten Thread für GUI-Operationen erstellt und geändert werden, um mögliche Thread-Probleme in einer Java-Anwendung zu vermeiden.

Kann ich IronPDF for Java ohne Lizenzierung für die Entwicklung verwenden?

Ja, IronPDF kann während der Entwicklung kostenlos verwendet werden. Es gibt auch eine kostenlose Testversion für kommerzielle Zwecke, die es Ihnen ermöglicht, seine Funktionen zu erkunden, bevor Sie eine Lizenz erwerben.

Wo finde ich zusätzliche Ressourcen für die Verwendung von IronPDF in Java?

Zusätzliche Ressourcen, Beispiele und Tutorials zur Verwendung von IronPDF in Java sind auf der IronPDF-Website verfügbar. Diese Ressourcen umfassen Anleitungen zur Erstellung von PDFs aus HTML und verschiedenen PDF-Bearbeitungstechniken.

Was ist der Prozess, um PDF-Seiten zu Bildern zu konvertieren und sie in Java Swing anzuzeigen?

Um PDF-Seiten mit IronPDF zu Bildern zu konvertieren, laden Sie das PDF mit PdfDocument, konvertieren jede Seite in ein BufferedImage und speichern sie als PNG-Dateien. Zeigen Sie diese Bilder mit einem JPanel und JScrollPane in einer Java Swing-Anwendung an.

Darrius Serrant
Full-Stack-Software-Ingenieur (WebOps)

Darrius Serrant hat einen Bachelor-Abschluss in Informatik von der University of Miami und arbeitet als Full-Stack-WebOps-Marketing-Ingenieur bei Iron Software. Seit seiner Jugend vom Programmieren angezogen, sah er die Informatik als sowohl mysteriös als auch zugänglich, was es zum perfekten Medium für Kreativität und Problemlösung ...

Weiterlesen

Iron Support Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an