ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
この記事では、JavaでPDFファイルを扱う際に使用される最も人気のある2つのライブラリについて取り上げます。
IronPDF
アパッチPDFBox
さて、どのライブラリを使用するべきでしょうか? この記事では、両方のライブラリの主要機能を比較し、どちらが本番環境に最適であるかを判断できるようにします。
PDPageContentStream
(上記の用語は技術的なコンテキストを保つために英語のままとします。)
(上記の用語は技術的なコンテキストを保つために英語のままとします。) ドキュメントとページを入力として
PDPageContentStream
(上記の用語は技術的なコンテキストを保つために英語のままとします。)
(上記の用語は技術的なコンテキストを保つために英語のままとします。)
インスタンスを設定およびコンテンツを追加保存
メソッド
IronPDFは、.NETおよびJava、Python、Node.jsでPDFを生成、編集、読み取るための強力なツールです。プログラマー向けに最適化されており、コードからPDFファイルの作成を容易に行うことができます。IronPDFは、HTML、CSS、JavaScript、および画像を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の特長には以下が含まれます:
余白 (mm、インチ、ゼロ)
カスタムユーザーエージェントとプロキシ
Apache PDFBoxは、PDFファイルを操作するためのオープンソースのJavaライブラリです。 既存のドキュメントを生成、編集、および操作することができます。 ファイルから内容を抽出することもできます。 このライブラリは、ドキュメントに対してさまざまな操作を実行するために使用されるいくつかのユーティリティを提供します。
Apache PDFBoxの注目すべき機能は以下の通りです。
記事の残りは次のとおりです:
IronPDFのインストール
Apache PDFBox のインストール
PDFドキュメントを作成
画像からドキュメントへ
書類の暗号化
ライセンス
結論
では、ライブラリをダウンロードしてインストールし、その強力な機能を比較しましょう。
IronPDF for Java のインストールは簡単です。 それを行うには様々な方法があります。 このセクションでは、最も人気のある二つの方法を示します。
IronPDFのJARファイルをダウンロードするには、こちらのページをご覧ください Mavenウェブサイト 最新バージョンのIronPDFをダウンロードしてください。
ダウンロードオプションをクリックし、JARをダウンロードしてください。
JARファイルをダウンロードしたら、次にMavenプロジェクトにライブラリをインストールする時です。 任意のIDEを使用できますが、ここではNetbeansを使用します。 プロジェクトセクションにて:
IronPDFをダウンロードしてインストールする別の方法は、Mavenを使用することです。 pom.xmlに依存関係を追加するか、Netbeansの依存関係ツールを使用してプロジェクトに含めることができます。
以下のコードをコピーして、pom.xmlに貼り付けてください。
申し訳ありませんが、xml-mvn-install-ao
は技術的な名前またはコードスニペットのように見えます。このテキストに関する追加の文脈情報や具体的な文章があれば、より正確な翻訳を提供できます。正確な翻訳を提供するためには、文全体や文脈を知る必要があります。例えば、IronPDF、IronOCRなどの製品についての説明や指示の場合、それらを翻訳いたしますので、具体的な文章を送ってください。
また、エラーメッセージ、インストールガイド、または特定のコードに関する説明がある場合、その文脈に基づいて翻訳を行うことが可能です。何か他にお手伝いできることがあれば、お知らせください。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。
それでは、Apache PDFBoxをインストールしましょう。
PDFBoxはIronPDFと同じ方法でダウンロードしてインストールすることができます。
公式サイトにアクセスして、PDFBox JARをインストールし ダウンロード 最新バージョン。
プロジェクトを作成した後、プロジェクトセクションで:
pom.xml
に依存関係を追加以下のコードをコピーして、pom.xmlに貼り付けてください。
<dependencies>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox-app</artifactId>
<version>3.0.0-alpha3</version>
</dependency>
</dependencies>
これは自動的にPDFBoxの依存関係をダウンロードしてリポジトリフォルダーにインストールします。 それで使用できるようになります。
IronPDFは、ファイルを作成するためのさまざまな方法を提供します。 最も重要な2つのメソッドを見てみましょう。
IronPDFを使用すると非常に簡単に HTMLからドキュメントを生成. 次のコードサンプルは、ウェブページの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"));
出力は、以下のように適切にフォーマットされて保存されたURLです:
以下のサンプルコードは、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"));
出力は以下の通りです:
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 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();
しかし、contentStream.newLineAtOffset
を削除すると(25,700)上記のコード例から ;を削除し、プロジェクトを実行すると、出力がページの下部にあるPDFが生成されます。 これは一部の開発者にとって非常に厄介かもしれません。なぜなら、彼らはテキストを調整しなければならないからです。 (x、y) 座標。 「
y = 0`」は、テキストが下に表示されることを意味します。
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");
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);
}
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"));
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();
IronPDF は、シンプルなPDFアプリケーションの開発に無料で使用でき、商業利用のためにいつでもライセンスを取得できます。IronPDF は、シングルプロジェクトライセンス、シングルデベロッパーライセンス、エージェンシーや多国籍企業向けのライセンス、SaaSおよびOEM再配布ライセンスとサポートを提供しています。 すべてのライセンスは利用可能です 無料トライアル30日間の返金保証と1年間のソフトウェアサポートおよびアップグレードが提供されます。
Liteパッケージは$749でご利用いただけます。 IronPDF製品には一切の定期料金はかかりません。 製品のソフトウェアライセンスに関する詳細情報は、製品 のページにてご確認いただけます。 ライセンス ページ
Apache PDFBoxは無料で利用できます。 個人的、社内的、または商業的な目的で使用する場合に関わらず、無料です。
Apache License 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のような、多くのオープンソースソリューションに欠けている点です。Apache PDFBoxは、開発者コミュニティの自主的なサポートに依存してメンテナンスを続けています。 要約すると、IronPDFはビジネスおよび市場での使用に最適であり、一方でApache PDFBoxは個人および非商業的なアプリケーションに向いています。
IronPDFの機能をテストするための無料体験版もあります。 試してみてください または 今すぐ購入.
すべてのIron Software製品が大幅に値引きされた価格でIron Suiteに含まれています。こちらのページをご覧ください ウェブページ この素晴らしい取引に関する詳細情報について。
9つの .NET API製品 オフィス文書用