VERWENDUNG VON IRONPDF FOR JAVA

Wie man in Java eine Vorschau von PDF-Dateien anzeigt

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

IronPDF

IronPDF ist eine leistungsstarke Java-Bibliothek, die schnelle und genaue Operationen bietet und somit eine ausgezeichnete Wahl für PDF-bezogene Aufgaben wie das Lesen von PDF-Dateien, Extraktion von Text und Bildern, Zusammenführen und Aufteilen ist.

Mit Hilfe der IronPDF-Bibliothek können Sie PDFs aus HTML, URLs und Strings mit präzisem, pixelgenauem Rendering erstellen.

Voraussetzungen

Um einen Dokumentbetrachter für PDF-Dokumente in Java zu erstellen, müssen Sie die folgenden Voraussetzungen erfüllen.

  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).

Einrichten

  1. Erstellen Sie ein neues Java-Projekt in der IDE Ihrer Wahl. Ich verwende IntelliJ IDEA und habe das Projekt mit Maven erstellt.

  2. Fügen Sie die IronPDF-Bibliothek zu Ihrem Projekt hinzu, indem Sie die Abhängigkeiten, die unten gezeigt werden, in die pom.xml-Datei Ihres Projekts einfügen:
    :ProductInstall
    :ProductInstall
SHELL
  1. Fügen Sie die erforderlichen Importe hinzu:
    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, besteht der nächste Schritt darin, die PDF-Datei in dieser Java-PDF-Viewer-Anwendung mit der PdfDocument-Klasse zu laden.

public class PDFPreview extends JFrame {

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

    private List<String> ConvertToImages() throws IOException {
        PdfDocument pdfDocument = PdfDocument.fromFile(Paths.get("example.pdf"));
        // Create a list of paths for images
        List<BufferedImage> extractedImages = pdfDocument.toBufferedImages();
        int i = 1;
        for (BufferedImage extractedImage : extractedImages) {
            String fileName = "assets/images/" + i + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
            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 {
        PdfDocument pdfDocument = PdfDocument.fromFile(Paths.get("example.pdf"));
        // Create a list of paths for images
        List<BufferedImage> extractedImages = pdfDocument.toBufferedImages();
        int i = 1;
        for (BufferedImage extractedImage : extractedImages) {
            String fileName = "assets/images/" + i + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
            imagePaths.add("assets/images/" + i + ".png");
            i++;
        }
        return imagePaths;
    }
}
JAVA

So zeigen Sie PDF-Dateien in Java an, Abbildung 1: Die Ausgabedatei PDF

Die Ausgabedatei im PDF-Format

In Bilder umgewandelt:

Wie man PDF-Dateien in Java in der Vorschau anzeigt, Abbildung 2: PDF-Datei in Bilder umwandeln

PDF-Datei in Bilder konvertieren

PDF-Viewer-Fenster erstellen

Jetzt 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 {
            imagePaths = this.ConvertToImages();
        } catch (Exception e) {

        }

        // 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 {
            imagePaths = this.ConvertToImages();
        } catch (Exception e) {

        }

        // 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

Aufrufen des Konstruktors der Klasse Main

Fügen Sie schließlich den folgenden Code in die Hauptmethode der PDFPreview-Klasse ein:

public static void main(String[] args) {
    SwingUtilities.invokeLater(
         PDFPreview::new
    );
}
public static void main(String[] args) {
    SwingUtilities.invokeLater(
         PDFPreview::new
    );
}
JAVA

Code Erläuterung

  1. PDFPreview erweitert JFrame, einen Top-Level-Container für die Fenstererstellung.

  2. Instanzvariablen deklariert: imagePanel, scrollPane und imagePaths.

  3. ConvertToImages() nimmt die PDF-Datei example.pdf und wandelt sie in eine Serie von Bildern um. Das PdfDocument lädt die PDF-Datei und konvertiert jede Seite in ein BufferedImage, speichert dann jede als PNG im assets/images/-Verzeichnis 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 wird als vertikales Box-Layout festgelegt.

  6. Es iteriert über imagePaths und erstellt für jedes Bild ein ImageIcon, fügt sie zu JLabel hinzu und fügt die Labels zum imagePanel hinzu.

  7. Der Quellcode erstellt JScrollPane und setzt imagePanel als dessen Ansicht.

  8. Als nächstes fügt der Code scrollPane zum Inhaltsbereich des Rahmens hinzu, legt den Titel des Rahmens fest, setzt die Standard-Schließoperation, packt die Komponenten, zentriert den Rahmen auf dem Bildschirm und macht ihn sichtbar.

  9. main() ist der Einstiegspunkt des Programms. Es ruft den PDFPreview-Konstruktor auf, indem es SwingUtilities.invokeLater() verwendet, um sicherzustellen, dass die Swing-Komponenten im Event Dispatch Thread erstellt und bearbeitet werden, dem dedizierten Thread für GUI-Operationen.

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

    Wie man PDF-Dateien in Java anzeigt, Abbildung 3: Die Ausgabedatei

    Die Ausgabedatei im PDF-Format

Schlussfolgerung

Dieser Artikel demonstrierte, wie man IronPDF für Java-basierte Anwendungen verwendet, um PDF-Dateien innerhalb einer Java-Anwendung zu betrachten, und wie man auf eine PDF-Datei zugreift und diese anzeigt.

Mit IronPDF können Sie ganz einfach PDF-Vorschaufunktionen in Ihre Java-Anwendung integrieren. Für detaillierte Anleitungen und Beispiele zur Nutzung von IronPDF for Java können Sie dieses Beispiel einsehen. Für das Java PDF-Lesetutorial besuchen Sie diesen Artikel, um PDF-Dateien zu lesen.

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

Darrius Serrant
Full Stack Software Engineer (WebOps)

Darrius Serrant hat einen Bachelor-Abschluss in Informatik von der University of Miami und arbeitet als Full Stack WebOps Marketing Engineer bei Iron Software. Schon in jungen Jahren vom Programmieren angezogen, sah er das Rechnen sowohl als mysteriös als auch zugänglich an, was es zum perfekten Medium für Kreativität und Problemlösung machte.

Bei Iron Software genießt Darrius es, neue Dinge zu erschaffen und komplexe Konzepte zu vereinfachen, um sie verständlicher zu machen. Als einer unserer ansässigen Entwickler hat er sich auch freiwillig gemeldet, um Schüler zu unterrichten und sein Fachwissen mit der nächsten Generation zu teilen.

Für Darrius ist seine Arbeit erfüllend, weil sie geschätzt wird und einen echten Einfluss hat.

< PREVIOUS
Wie man PDF-Dateien in Java mit Wasserzeichen versieht
NÄCHSTES >
Arbeiten mit Maven-Projekten in IntelliJ

Installation mit Maven

Version:2025.5.6

<dependency>
  <groupId>com.ironsoftware</groupId>
  <artifactId>ironpdf</artifactId>
  <version>2025.5.6</version>
</dependency>

Sind Sie bereit, loszulegen? Version: 2025.5 gerade veröffentlicht

Lizenzen anzeigen >