フッターコンテンツにスキップ
JAVA用IRONPDFの使用

JavaでPDFファイルをプレビューする方法

この記事では、Javaアプリケーション内でPDFファイルをプレビューするためにIronPDFを使用する方法を示します。

IronPDF

IronPDFは、高性能なJavaライブラリであり、高速で正確な操作を提供し、PDFファイルの読み取りテキストと画像の抽出マージ分割などのPDF関連タスクに最適な選択となります。

IronPDFライブラリを使用すると、正確なピクセルパーフェクトレンダリングでHTML、URL、および文字列からPDFを作成できます。

前提条件

JavaでPDFドキュメント用のドキュメントビューアーを作成するには、次の要素を整えておく必要があります。

  1. JDK(Java Development Kit)とSwing UIフレームワークがインストールされていること。
  2. Eclipse、NetBeans、IntelliJ IDEA など Java 向け IDE (統合開発環境) を用意してください。
  3. IronPDFライブラリ(IronPDFのウェブサイトからダウンロードしてプロジェクトに含めることができます)。

セットアップ

  1. 選んだIDEで新しいJavaプロジェクトを作成します。私はIntelliJ IDEAを使用し、Mavenでプロジェクトを作成しました。
  2. Mavenを使用して、プロジェクトのpom.xmlファイルに以下の依存関係を追加して、 IronPDFライブラリをプロジェクトに追加します。

    
    <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. 必要なインポートを追加します。

    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

PDFファイルフォーマットの読み込み

PDF ドキュメントを表示するには、次のステップとして、 PdfDocumentクラスを使用して、この Java PDF ビューア アプリケーションに PDF ファイルをロードします。

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

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

メインクラスコンストラクタの呼び出し

最後に、PDFPreview クラスの main メソッドに次のコードを配置してください。

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

コードの説明

  1. PDFPreview は、ウィンドウ作成のためのトップレベルコンテナである JFrame を拡張します。
  2. 宣言されたインスタンス変数: scrollPane、および imagePaths
  3. ConvertToImages() は PDF ファイル example.pdf を取り込み、一連の画像に変換します。 PdfDocument は PDF ファイルを読み込み、各ページを BufferedImage に変換し、それぞれをassets/images/ディレクトリに PNG として保存し、パスを 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ベースのアプリケーションでPDFファイルをプレビューするためにIronPDFを使用する方法、およびPDFファイルをアクセスして表示する方法を示しました。

IronPDFを使用すると、JavaアプリケーションにPDFプレビュー機能を簡単に統合できます。 IronPDFをJavaで利用するための詳細なガイダンスと例については、このを参照できます。 JavaのPDFリーダーチュートリアルについては、この記事を訪れてPDFファイルを読み取ることができます。

IronPDFは開発目的で無料です。 ライセンスの詳細については、提供されたライセンスページを訪れることができます。 商用利用のための無料トライアルも利用可能です。

よくある質問

JavaアプリケーションでPDFファイルをプレビューするにはどうすればよいですか?

JavaアプリケーションでPDFファイルをプレビューするには、IronPDFを使用してPDFページをイメージに変換し、Java Swingコンポーネントを使用してこれらのイメージを表示します。これはPdfDocumentクラスを使用してPDFをロードし、ページをBufferedImageに変換し、JPanelJScrollPaneを使用して表示することを含みます。

JavaプロジェクトにPDFライブラリを統合する手順は何ですか?

IronPDFをJavaプロジェクトに統合するには、Maven依存関係としてプロジェクトのpom.xmlファイルにライブラリを含め、グループIDを「com.ironsoftware」、アーティファクトIDを「ironpdf」とします。JDKとJava IDEがインストールされていることを確認してください。

Javaを使用してPDFページをイメージに変換するにはどうすればよいですか?

IronPDFを使用すると、PdfDocumentクラスを使用してPDFドキュメントをロードし、各ページをBufferedImageに変換することで、PDFページをイメージに変換できます。これらのイメージはPNGファイルとして保存できます。

JavaでPDFページをイメージとして表示するには、ど for Javaコンポーネントが必要ですか?

Javaでは、Java Swingコンポーネントを使用してPDFページをイメージとして表示できます。具体的には、JPanelを使用してイメージを保持し、JScrollPaneを使用してイメージをスクロールします。

JavaでPDFビューアを作成する際にEvent Dispatch Threadが重要な理由は何ですか?

Event Dispatch Thread(EDT)は、すべてのSwingコンポーネントがGUI操作用の専用スレッドで作成および変更されることを保証し、Javaアプリケーションでのスレッド問題を防ぐため重要です。

開発のために、IronPDF for Javaをライセンスなしで使用できますか?

はい、IronPDFは開発中無料で利用できます。ライセンスを購入する前にその機能を探るための商業用の無料トライアルも利用可能です。

JavaでIronPDFを使用するための追加リソースはどこにありますか?

JavaでIronPDFを使用するための追加リソース、例、およびチュートリアルは、IronPDFのウェブサイトで利用可能です。これらのリソースには、HTMLからPDFを作成するガイドやさまざまなPDF操作技術が含まれます。

PDFページをイメージに変換し、Java Swingで表示するプロセスは何ですか?

IronPDFを使用してPDFページをイメージに変換するには、PdfDocumentを使用してPDFをロードし、各ページをBufferedImageに変換してPNGファイルとして保存します。これらの画像をJava SwingアプリケーションでJPanelJScrollPaneを使って表示します。

Darrius Serrant
フルスタックソフトウェアエンジニア(WebOps)

Darrius Serrantは、マイアミ大学でコンピュータサイエンスの学士号を取得し、Iron SoftwareでフルスタックWebOpsマーケティングエンジニアとして働いています。若い頃からコーディングに惹かれ、コンピューティングを神秘的かつアクセス可能なものとし、創造性と問題解決のための完璧な媒体と考えていました。

Iron Softwareでは、新しいものを創造することと、複雑なコンセプトをより理解しやすくすることを楽しんでいます。Resident Developerの一人として、次世代に専門知識を共有するために、学生を教えることにも志願しました。

Darriusにとって、その仕事は価値があり、実際の影響があるため、満足感があります。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね