フッターコンテンツにスキップ
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 など for Java IDE (統合開発環境) を用意してください。
  3. IronPDFライブラリ(IronPDFのウェブサイトからダウンロードしてプロジェクトに含めることができます)。

セットアップ

  1. 選んだIDEで新しいJavaプロジェクトを作成します。私はIntelliJ IDEAを使用し、Mavenでプロジェクトを作成しました。
  2. プロジェクトの pom.xml ファイルに以下に示す依存関係を追加し、Maven を使用して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. 宣言されたインスタンス変数: imagePanelscrollPane、および imagePaths
  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ベースのアプリケーションで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にとって、その仕事は価値があり、実際の影響があるため、満足感があります。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me