使用 IRONPDF FOR JAVA

如何在 Java 中預覽 PDF 文件

Darrius Serrant
Darrius Serrant
2023年7月5日
已更新 2024年9月15日
分享:

本文將演示如何在Java應用程序中使用IronPDF預覽PDF文件。

IronPDF

IronPDF 是一個高性能的 Java 函式庫,提供快速且準確的操作,使其成為處理 PDF 相關任務的優秀選擇,如閱讀 PDF 文件提取文字和圖片合併拆分

借助IronPDF庫,您可以從HTML創建PDF,以及從URL和字符串創建具有精確像素完美渲染的PDF。

先決條件

要在 Java 中創建 PDF 文件查看器,您需要準備以下事項。

  1. 安裝了 JDK(Java 開發工具包)和 Swing UI 框架。

  2. 像 Eclipse、NetBeans 或 IntelliJ IDEA 等 Java IDE(集成開發環境)。

  3. IronPDF library for Java(您可以從IronPDF網站下載並將其包含在您的項目中)。

設定

  1. 在您選擇的 IDE 中創建一個新的 Java 專案。我使用的是 IntelliJ IDEA 並使用 Maven 創建了該專案。

  2. 在您的專案的pom.xml檔案中加入以下相依性,以使用 Maven 將 IronPDF 庫新增至您的專案:
    :ProductInstall
  1. 添加必要的導入:
    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

正在載入PDF檔案格式

要查看 PDF 文件,下一步是使用 PdfDocument 類別在此 Java PDF 查看器應用程式中加載 PDF 文件。

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

如何在 Java 中預覽 PDF 檔案,圖 1:輸出 PDF 檔案

輸出 PDF 檔案

轉換為圖像:

如何在 Java 中預覽 PDF 文件,圖 2:將 PDF 文件轉換為圖像

將 PDF 檔案轉換為圖片

建立 PDF 檢視器視窗

現在,您可以使用 Java Swing 元件在預覽窗口中顯示轉換後的圖像。

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

調用 Main 類的構造函數

最後,將以下代碼放置在PDFPreview類的主要方法中:

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

程式碼說明

  1. PDFPreview 擴展了 JFrame,一個用於窗口創建的頂層容器。

  2. 宣告的實例變數為:imagePanelscrollPaneimagePaths

  3. ConvertToImages() 接收 PDF 文件 example.pdf,並將其轉換為一系列圖片。 PdfDocument載入PDF檔案並將每一頁轉換為BufferedImage,然後將每一頁以PNG格式存檔到assets/images/目錄,並將路徑新增到imagePaths

  4. PDFPreview() 初始化應用程式。 它呼叫ConvertToImages()來填充imagePaths

  5. imagePanel 被初始化並將其佈局設置為垂直箱形佈局。

  6. 它遍歷 imagePaths,為每個圖像創建 ImageIcon,將它們添加到 JLabel,並將標籤添加到 imagePanel

  7. 源代碼創建JScrollPane並設置imagePanel作為其視口。

  8. 接下來,程式碼將scrollPane添加到框架的內容窗格中,設定框架的標題,設定默認關閉操作,打包元件,將框架置於螢幕中央,並使其可見。

  9. main() 是程式的入口點。 它使用 SwingUtilities.invokeLater() 調用 PDFPreview 構造函數,以確保 Swing 組件在事件派發執行緒上創建和修改,這是專門用於 GUI 操作的執行緒。

    現在,執行程式,PDF 文件檔案檢視器將會顯示已載入的 PDF 文件。

    如何在 Java 預覽 PDF 文件,圖 3:輸出 PDF 文件

    輸出 PDF 檔案

結論

本文展示了如何在基於 Java 的應用程式中使用 IronPDF 預覽 PDF 文件,以及如何存取和顯示 PDF 文件。

使用 IronPDF,您可以輕鬆將 PDF 預覽功能整合到您的 Java 應用程式中。 有關如何使用 IronPDF for Java 的詳細指南和範例,您可以參考此範例。 要獲取 Java PDF 閱讀器教程,請訪問此文章以閱讀 PDF 文件

IronPDF 在開發用途中是免費的。 若要了解更多有關授權的詳細資訊,您可以造訪提供的授權頁面。 也提供免費試用以供商業使用。

Darrius Serrant
全端軟體工程師(WebOps)

Darrius Serrant 擁有邁阿密大學的計算機科學學士學位,目前擔任 Iron Software 的全端 WebOps 行銷工程師。自幼對編程產生興趣,他認為計算機既神秘又易於接觸,使其成為創造力和解決問題的完美媒介。

在 Iron Software,Darrius 享受創造新事物並簡化複雜概念使其更易理解的過程。作為我們的其中一位常駐開發人員,他也自願教導學生,將他的專業知識傳授給下一代。

對 Darrius 來說,他的工作之所以令人滿足,是因為它受到重視並且產生了真正的影響。

< 上一頁
如何在 Java 中給 PDF 文件加浮水印
下一個 >
使用 IntelliJ 處理 Maven 項目

使用 Maven 安裝

版本:2025.4.4

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