製品比較

IronPDF for JavaとApache PDFBoxの比較

公開済み 2023年1月14日
共有:

この記事では、JavaでPDFファイルを扱う際に使用される最も人気のある2つのライブラリについて取り上げます。

  1. IronPDF

  2. アパッチPDFBox

    さて、どのライブラリを使用するべきでしょうか? この記事では、両方のライブラリの主要機能を比較し、どちらが本番環境に最適であるかを判断できるようにします。

  3. 以下を使用 PDPageContentStream (上記の用語は技術的なコンテキストを保つために英語のままとします。) インスタンスを設定およびコンテンツを追加
  4. PDFドキュメントをエクスポート 保存 メソッド

IronPDF

IronPDFは、.NETおよびJava、Python、Node.jsでPDFを生成、編集、読み取るための強力なツールです。プログラマー向けに最適化されており、コードからPDFファイルの作成を容易に行うことができます。IronPDFは、HTML、CSS、JavaScript、および画像をPDFドキュメントに変換する能力を提供します。

機能

  • HTML to PDF: HTML、CSS、JavaScriptを利用してPDFを生成。
  • PDFの編集: 既存のPDFドキュメントにテキスト、画像、ページ番号、さらにはカスタムヘッダーやフッターを追加。
  • PDFの読み取り: PDFファイルからテキスト、画像、メタデータを抽出。
  • セキュリティ: パスワード保護や暗号化オプションでPDFドキュメントを保護。

利点

  • 使いやすさ: シンプルなAPIで時間を節約。
  • 高品質: 正確で美しいPDFドキュメントを生成。
  • 柔軟性: 様々なプラットフォームや言語で利用可能。

対応ライセンス

IronPDFは様々なライセンスオプションがあり、Lite License、Plus License、Professional License、Unlimited Licenseが用意されています。

技術サポートや詳細については、Iron Softwareの公式サイトをご覧ください。

についてIronPDFライブラリはサポートしていますHTMLをPDFに変換Java 8+、Kotlin、Scala向け。 このクリエイターは、Windows、Linux、またはクラウドプラットフォームなど、クロスプラットフォームのサポートを提供します。 これは、正確さ、使いやすさ、そして速度を重視するJava向けに特別に設計されています。

IronPDFはソフトウェア開発者がPDFドキュメントを作成、編集、抽出できるように開発されています。 IronPDF for .NETの成功と人気に基づいています。

IronPDFの主な特徴は次のとおりです:

HTMLアセットを使用する

  • HTML (エイチティーエムエル)(5以下)CSS(カスケーディング・スタイル・シート)(カスケーディング・スタイル・シート)(スクリーン&プリント)画像(jpg、png、gif、tiff、svg、bmp)ジャバスクリプト(レンダリング遅延)
  • フォント(ウェブ&アイコン)

HTMLからPDF

  • HTMLファイル/文字列をPDFドキュメントに変換および操作
  • URLをPDFに変換

画像を変換

  • 新しいPDFドキュメントへの画像
  • 画像へのPDF

カスタム用紙設定

  • カスタム用紙サイズ、方向、および回転
  • 余白(mm、インチ、ゼロ)
  • カラー & グレースケール、解像度 & JPEG品質

追加機能

  • ウェブサイトおよびシステムログイン
  • カスタムユーザーエージェントとプロキシ
  • HTTPヘッダー

Apache PDFBox ライブラリ

Apache PDFBoxは、PDFファイルを操作するためのオープンソースのJavaライブラリです。 既存のドキュメントを生成、編集、操作することができます。 ファイルから内容を抽出することもできます。 このライブラリは、ドキュメントに対してさまざまな操作を実行するために使用されるいくつかのユーティリティを提供します。

Apache PDFBoxの注目すべき機能は以下の通りです。

テキストを抽出

  • ファイルからUnicodeテキストを抽出。

分割 & 結合

  • 単一のPDFを複数のファイルに分割する
  • 複数のドキュメントを結合します。

フォームに入力

  • フォームからデータを抽出する
  • PDFフォームに入力。

プリフライト

  • PDF/A-1b標準に対してファイルを検証します。

印刷

  • 標準の印刷APIを使用してPDFを印刷します。

画像として保存

  • PDFをPNG、JPEG、またはその他の画像タイプとして保存します。

PDFを作成

  • フォントと画像を埋め込んでPDFをゼロから開発する。

署名

  • ファイルにデジタル署名を行います。

概要

記事の残りは次のとおりです:

  1. IronPDFのインストール

  2. Apache PDFBox のインストール

  3. PDFドキュメントを作成

  4. 画像からドキュメントへ

  5. 書類の暗号化

  6. ライセンス

  7. 結論

    それでは、ライブラリをダウンロードしてインストールし、その強力な機能を比較してみましょう。

1. IronPDFのインストール

IronPDF for Java のインストールは簡単です。 それを行うには様々な方法があります。 このセクションでは、最も人気のある二つの方法を示します。

JAR ファイルをダウンロードしてライブラリーを追加してください

IronPDFのJARファイルをダウンロードするには、こちらのページをご覧くださいIronPDFのためのMavenウェブサイト最新バージョンのIronPDFをダウンロードしてください。

  • ダウンロードオプションをクリックし、JARをダウンロードしてください。

    Java向けIronPDFとJava向けApache PDF Boxの比較 - 図1: IronPDF JARをダウンロード

    IronPDF JARをダウンロード

    JARファイルをダウンロードしたら、次にMavenプロジェクトにライブラリをインストールする時です。 どのIDEを使用してもかまいませんが、NetBeansを使用する予定です。 プロジェクトセクションにて:

  • ライブラリフォルダを右クリックし、Add JAR/Folder オプションを選択してください。
    Java用IronPDFとJava用Apache PDF Boxの比較 - 図2: NetbeansにてIronPDFライブラリを追加

    NetbeansにIronPDFライブラリを追加する

  • ダウンロードしたJARがあるフォルダーに移動します。
  • IronPDF JARを選択し、Openボタンをクリックしてください。
    Java用IronPDFとApache PDF Box for Javaの比較 - 図3: IronPDF JARを開く

    IronPDF JARを開く

Mavenを介して依存関係としてインストール

IronPDFをダウンロードしてインストールする別の方法は、Mavenを使用することです。 pom.xml に依存関係を追加するか、NetBeans の依存関係ツールを使用してプロジェクトに含めるだけです。

pom.xmlにライブラリ依存関係を追加

以下のコードをコピーして、pom.xmlに貼り付けてください。

申し訳ありませんが、xml-mvn-install-aoは技術的な名前またはコードスニペットのように見えます。このテキストに関する追加の文脈情報や具体的な文章があれば、より正確な翻訳を提供できます。正確な翻訳を提供するためには、文全体や文脈を知る必要があります。例えば、IronPDF、IronOCRなどの製品についての説明や指示の場合、それらを翻訳いたしますので、具体的な文章を送ってください。

また、エラーメッセージ、インストールガイド、または特定のコードに関する説明がある場合、その文脈に基づいて翻訳を行うことが可能です。何か他にお手伝いできることがあれば、お知らせください。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

依存関係機能を使用してライブラリを追加

  • 依存関係を右クリックしてください
  • 以下の詳細を最新バージョンで記入し、「依存関係の追加」を選択してください。
    Java用IronPDFとApache PDF Boxの比較 - 図4: IronPDF依存関係の追加

    IronPDF依存関係を追加

    それでは、Apache PDFBoxをインストールしましょう。

2. Apache PDFBoxのインストール

PDFBoxはIronPDFと同じ方法でダウンロードしてインストールすることができます。

2.1. JAR をダウンロードしてライブラリを手動で追加

公式サイトにアクセスして、PDFBox JARをインストールしPDFBox ライブラリをダウンロード最新バージョン。

プロジェクトを作成した後、プロジェクトセクションで:

  • ライブラリフォルダを右クリックし、Add JAR/Folder オプションを選択します。
    Java用IronPDFとApache PDF Boxの比較 - 図5: ライブラリを追加

    ライブラリの追加

  • ダウンロードしたJARがあるフォルダーに移動します。
  • PDFBox JAR を選択し、[開く] ボタンをクリックします。
    Java用のIronPDFとApache PDF Boxの比較 - 図6: PDFBox JARを開く

    PDFBox JARを開く

Mavenで依存関係としてインストール

pom.xml に依存関係を追加

以下のコードをコピーして、pom.xmlに貼り付けてください。

<dependencies>
    <dependency>  
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox-app</artifactId>
        <version>3.0.0-alpha3</version>
    </dependency>
</dependencies>
XML

こ れに よ り 、 PDFBox の依存関係が自動的にダ ウ ン ロ ー ド さ れ、 リ ポジ ト リ フ ォ ルダに イ ン ス ト ール さ れます。 それで使用できるようになります。

依存関係機能を使用して依存関係を追加

  • プロジェクトセクション内の依存関係を右クリックします
  • 以下の詳細を最新バージョンで記入し、「依存関係の追加」を選択してください。
    Java 用 IronPDF と Apache PDF Box の比較 - 図 7: PDFBox 依存関係の追加

    PDFBoxの依存関係を追加

PDFドキュメントを作成する

3.1. IronPDFの使用

IronPDFは、ファイルを作成するためのさまざまな方法を提供します。 最も重要な2つの方法を見てみましょう。

既存のURLからPDFに変換

IronPDFを使用すると非常に簡単にHTMLからドキュメントを生成. 次のコードサンプルは、WebページのURLをPDFに変換します。

License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
myPdf.saveAs(Paths.get("url.pdf"));
JAVA

出力は、以下のURLで、書式を整え、以下のように保存します:

Java向けIronPDFとJava向けApache PDF Boxの比較 - 図8: IronPDF URL出力

IronPDF URL出力

HTML入力文字列をPDFに変換

以下のサンプルコードは、HTML文字列を使用してJavaでPDFをレンダリングする方法を示しています。 HTML文字列またはドキュメントを使用して、新しいドキュメントに変換するだけです。

License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
myPdf.saveAs(Paths.get("html_saved.pdf"));
JAVA

出力は以下の通りです:

Java向けIronPDFとApache PDF Box for Javaの比較 - 図9: IronPDF HTML出力

IronPDF HTML出力

3.2. Apache PDFBoxの使用

PDFBoxはさまざまな形式から新しいPDFドキュメントを生成することもできますが、URLやHTML文字列から直接変換することはできません。

以下のコードサンプルは、いくつかのテキストを含むドキュメントを作成します:

//Create document object
PDDocument document = new PDDocument();    

PDPage blankPage = new PDPage();
document.addPage(blankPage);

//Retrieving the pages of the document 
PDPage paper = document.getPage(0);
PDPageContentStream contentStream = new PDPageContentStream(document, paper);

//Begin the Content stream 
contentStream.beginText(); 

//Setting the font to the Content stream  
contentStream.setFont(PDType1Font.TIMES_ROMAN, 12);

//Setting the position for the line 
contentStream.newLineAtOffset(25, 700);

String text = "This is the sample document and we are adding content to it.";

//Adding text in the form of a string 
contentStream.showText(text);      

//Ending the content stream
contentStream.endText();

System.out.println("Content added");

//Closing the content stream
contentStream.close();

//Saving the document
document.save("C:/PdfBox_Examples/my_doc.pdf");

System.out.println("PDF created");  

//Closing the document  
document.close();
JAVA
Java向けIronPDFとJava向けApache PDFBoxの比較 - 図10: PDFBoxの位置出力

PDFBoxポジショニング出力

しかし、contentStream.newLineAtOffsetを削除すると(25,700)上記のコード例から、プロジェクトを実行すると、ページの下部に出力されたPDFが生成されます。 これは一部の開発者にとって非常に厄介かもしれません。なぜなら、彼らはテキストを調整しなければならないからです。(x、y)座標。 「y = 0`」は、テキストが下に表示されることを意味します。

Java向けのIronPDFとApache PDFBoxの比較 - 図11: PDFBoxの位置指定なし出力

ポジショニングなしのPDFBox出力

画像をドキュメントに変換

IronPDFの使用方法

IronPDFは、複数の画像を簡単に1つのPDFに変換できます。 複数の画像を単一のドキュメントに追加するためのコードは次のとおりです:

import com.ironsoftware.ironpdf.*;  
import java.io.IOException;  
import java.nio.file.*;  
import java.util.ArrayList;  
import java.util.List;  

// Reference to the directory containing the images that we desire to convert
List<Path> images = new ArrayList<>();
images.add(Paths.get("imageA.png"));
images.add(Paths.get("imageB.png"));
images.add(Paths.get("imageC.png"));
images.add(Paths.get("imageD.png"));
images.add(Paths.get("imageE.png"));

// Render all targeted images as PDF content and save them together in one document.
PdfDocument merged = PdfDocument.fromImage(images);
merged.saveAs("output.pdf");
JAVA
Java用IronPDFとApache PDF Boxの比較 - 図12: IronPDFの画像を出力

IronPDF 画像から出力

4.2. Apache PDFBoxの使用

import java.io.File;

import org.apache.pdfbox.pdmodel.PDDocument; 
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;

// Reference to the directory containing the images that we desire to convert
Path imageDirectory = Paths.get("assets/images");

// Create an empty list to contain Paths to images from the directory.
List<Path> imageFiles = new ArrayList<>();

PDDocument doc = new PDDocument();

// Use a DirectoryStream to populate the list with paths for each image in the directory that we want to convert
try (DirectoryStream<Path> stream = Files.newDirectoryStream(imageDirectory, "*.{png,jpg}")) {
    for (Path entry : stream) {
        imageFiles.add(entry);
    }
    for (int i = 0; i < imageFiles.size(); i++){
        //Add a Page
PDPage blankPage = new PDPage();
        doc.addPage(blankPage);
        PDPage page = doc.getPage(i);

        //Creating PDImageXObject object
        PDImageXObject pdImage = PDImageXObject.createFromFile(imageFiles.get(i).toString(),doc);

        //creating the PDPageContentStream object
        PDPageContentStream contents = new PDPageContentStream(doc, page);

        //Drawing the image in the document
        contents.drawImage(pdImage, 0, 0);

        System.out.println("Image inserted");

        //Closing the PDPageContentStream object
        contents.close();
    }
    //Saving the document
    doc.save("C:/PdfBox_Examples/sample.pdf");

    //Closing the document
    doc.close();

} catch (IOException exception) {
    throw new RuntimeException(String.format("Error converting images to PDF from directory: %s: %s",
            imageDirectory,
            exception.getMessage()),
            exception);
}
JAVA
Java向けIronPDFとApache PDFBoxの比較 - 図13: PDFBox画像から出力

PDFBox 画像の出力

5. ドキュメントの暗号化

5.1. IronPDFの使用

IronPDFでパスワードを使用してPDFを暗号化するためのコードは以下の通りです:

// Open a document(or create a new one from HTML)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/composite.pdf"));

// Edit security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");

// Change or set the document encryption password
SecurityManager securityManager = pdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
pdf.saveAs(Paths.get("assets/secured.pdf"));
JAVA

5.2. Apache PDFBoxの使用

Apache PDFBoxは、ファイルをより安全にするためにドキュメントの暗号化も提供します。 メタデータのような追加情報も追加できます。 コードは次のようになります:

//Loading an existing document
File file = new File("C:/PdfBox_Examples/sample.pdf");
PDDocument document = PDDocument.load(file);

//Creating access permission object
AccessPermission ap = new AccessPermission();

//Creating StandardProtectionPolicy object
StandardProtectionPolicy spp = new StandardProtectionPolicy("1234", "1234", ap);

//Setting the length of the encryption key
spp.setEncryptionKeyLength(128);

//Setting the access permissions
spp.setPermissions(ap);

//Protecting the document
document.protect(spp);

System.out.println("Document encrypted");

//Saving the document
document.save("C:/PdfBox_Examples/encrypted.pdf");
//Closing the document
document.close();
JAVA

価格とライセンス

IronPDFの価格とライセンス

IronPDF は、シンプルなPDFアプリケーションの開発に無料で使用でき、商業利用のためにいつでもライセンスを取得できます。IronPDF は、シングルプロジェクトライセンス、シングルデベロッパーライセンス、エージェンシーや多国籍企業向けのライセンス、SaaSおよびOEM再配布ライセンスとサポートを提供しています。 すべてのライセンスは利用可能です 無料トライアル30日間の返金保証、1年間のソフトウェアサポートとアップグレード。

Liteパッケージは$749でご利用いただけます。 IronPDF製品には一切の定期料金はかかりません。 製品のソフトウェアライセンスに関する詳細情報は、製品 のページにてご確認いただけます。IronPDFライセンスページ.

Java向けIronPDFとJava向けApache PDF Boxの比較 - 図14:IronPDFライセンスニング

IronPDF ライセンシング

Apache PDFBoxの価格とライセンス

Apache PDFBoxは無料で利用できます。 個人用、社内用、商用など、どのように使用されるかにかかわらず、無料です。

Apache License 2.0 を含めることができます。(最新バージョン)以下の内容を日本語に翻訳してください:

Iron SoftwareのIronPDFは、PDFの生成および操作を簡単かつ効率的に行うためのソリューションを提供します。IronPDF for .NET、IronPDF for Java、IronPDF for Python、IronPDF for Node.jsの各バージョンを使用すると、異なるプログラミング環境において一貫した機能とパフォーマンスを提供します。

IronOCRは、画像やスキャンされたPDFからのテキスト抽出を容易にします。特に、IronOCR for .NETは、OCR機能をアプリケーションに統合するための強力なツールセットを提供します。

IronXLは、データの読取り・書込みを効率化するためのライブラリです。特にIronXL for .NETとIronXL for Pythonは、エクセルの処理を容易にし、生産性を向上させます。

IronBarcodeは、バーコードの生成と読み取りに特化したライブラリです。IronBarcode for .NETは、バーコードを迅速かつ正確に処理するためのツールを提供します。

IronQRは、QRコードの生成と読み取りを支援するライブラリで、IronQR for .NETを使用することで、簡単にアプリケーションに統合できます。

IronZIPは、圧縮ファイルの生成および解凍を簡単に行うためのライブラリです。IronZIP for .NETは、高性能な圧縮および解凍機能を提供します。

IronWordを使用すると、Wordドキュメントの生成と操作が容易になります。IronWord for .NETは、Wordファイルの操作を効率化するためのツールセットを提供します。

IronPrintは、簡単にドキュメントの印刷を行うためのライブラリです。IronPrint for .NETは、印刷ジョブを管理し、スムーズな印刷プロセスをサポートします。

IronWebscraperは、ウェブスクレイピングを行うためのライブラリで、IronWebscraper for .NETを使用すると、Webデータの収集が容易になります。

Iron Suiteは、上記全てのライブラリを含む総合パッケージです。特にIron Suite for .NETおよびIron Suite Unlimitedは、多様な開発ニーズに対応するための包括的なソリューションを提供します。

ライセンスオプションも豊富で、Lite License、Plus License、Professional License、Unlimited Licenseのいずれかを選択できます。Apacheライセンス2.0テキスト. ライセンスのコピーを含めるには、作品に含めるだけです。 また、ソースコードの先頭にコメントとして以下の通知を添付することもできます。

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

結論

比較すると、IronPDFは機能性と製品サポートの両面でApache PDFBoxに優れています。 また、最新のソフトウェア開発で必要とされるSaaSやOEMのサポートも提供します。 ただし、このライブラリはApache PDFBoxのように商業利用において無料ではありません。

大規模なソフトウェア・アプリケーションを持つ企業では、ソフトウェア開発中に発生した問題を解決するために、サードパーティ・ベンダーによる継続的なバグ修正やサポートが必要になる場合があります。 これは、Apache PDFBoxのような多くのオープンソースソリューションに欠けているもので、開発者のコミュニティからの自発的なサポートに依存して維持されています。 一言で言えば、IronPDFはビジネスや市場での使用に最適で、Apache PDFBoxは個人や非商用アプリケーションに適しています。

IronPDFの機能をテストするための無料体験版もあります。 試してみてくださいはい、以下の内容を日本語に翻訳いたします:

以下の内容を日本語に翻訳してください:

IronPDF allows developers to generate, edit and read PDF files in .NET applications. It simplifies the process of integrating PDF functionalities into software development projects.

Let's get startedIronPdfを購入する.

Iron Suiteに含まれるIron Softwareの全製品を、大幅な割引価格でお求めいただけます。こちらへIron Suiteウェブページこの素晴らしい取引に関する詳細情報について。

< 以前
Java向けのIronPDFとSpire.PDF Javaの比較
次へ >
Java用のIronPDFとJava用のiTextPDF itext7の比較

準備はできましたか? バージョン: 2024.11 新発売

無料のMavenダウンロード ライセンスを表示 >