JavaでPDFファイルを単一のPDFに結合
PDFはポータブルドキュメントフォーマットであり、テキストやグラフィックを含む新しい電子ドキュメント形式です。 独立した形式であり、すべてのオペレーティングシステム、デバイス、またはソフトウェアアプリケーションで同じ内容とレイアウトを表示します。
Javaは、高水準のプログラミング言語であり、PDFデータのようにプラットフォームに依存しません。 これにより、異なるコンピュータシステム間の移行が容易になります。 しかし、ソースPDFファイルと入力ストリームを使うことは、Javaでは難しい作業となります。 IronPDF - Javaライブラリは、既存のPDFファイルを簡単に操作して使用するのに適しています。
このハウツーガイドでは、IronPDF Javaライブラリのインストール方法および複数のPDFドキュメントをマージする方法を学びます。
JavaでPDFファイルを結合する方法
- PDFファイルを結合するためのJavaライブラリをインストール
- 複数のPDFを生成するためにrenderHtmlAsPdfメソッドを利用します
- Javaで
merge
メソッドを使用してPDFを結合する - 結合されたPDFドキュメントを保存するには、saveAs メソッドを使用します。
- 2つ以上のPDFをマージするには、PDFオブジェクトのリストを作成して
merge
メソッドを使用します
IronPDF: Javaライブラリ
IronPDFは、単一または複数のPDFドキュメントの作成、読み取り、編集のためのJavaライブラリです。 ユーザーが、HTMLレンダリングを使用してコンテンツの外観を設計し、タイトルや著者名などのメタデータも含むPDFファイルをゼロから作成できるようにします。 ライブラリは複数のPDFファイルを結合することもでき、コンテンツを1つのPDF目的地ファイルパスに統合するのが非常に簡単になります。 PDFファイルやPDFイテレータオブジェクトを扱うために、サードパーティのライブラリ、外部フレームワーク、またはプラットフォームの統合は必要ありません。 また、クロスプラットフォームサポートも提供しています。 これは、Windows、Linux、およびクラウドプラットフォームで動作するJava 8+、Kotlin、Scala向けに特別に設計されています。
前提条件
複数のPDFファイルをマージするには、以下が必要です:
-
Java対応の任意のIDE(Netbeans、Eclipse、IntelliJなど)。 複数のPDFを結合するために、ここではIntelliJを使用します。
- IDEで動作するMavenプロジェクト
IronPDF をインストール
PDFファイルを結合するために、最初に必要なのはIronPDF for Javaライブラリです。 任意のプロジェクトにIronPDFをダウンロードしてインストールする方法は3つあります。
-
Mavenプロジェクトのpom.xmlファイルにIronPDF依存関係を追加し、mavenコマンドラインツールまたはIDEを使用して、中央リポジトリからライブラリを直接ダウンロードすることができます。
-
別の方法としては、Mavenのウェブサイトにアクセスして最新バージョンのIronPDFをダウンロードすることです。 [こちら](https://search.maven.org/artifact/com.ironsoftware/ironpdf" target="_blank" rel="nofollow noreferrer noopener)から直接ダウンロードできます。
-
こちらのリンクから直接ダウンロードするためにIronPDFのウェブサイトをご訪問いただけます。
各場合において、以下の依存関係コードがpom.xmlファイルに追加されます。
xml-mvn-install-ao
PDFを結合するためにもう一つ必要な依存関係はSlf4j-simple依存関係です。 以下のコードを使用してpom.xmlファイルに追加することもできますし、Mavenのウェブサイトを[こちら](https://search.maven.org/artifact/org.slf4j/slf4j-simple" target="_blank" rel="nofollow noopener noreferrer)で確認することもできます。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
次のインポート文は、PDFファイルをマージするためのIronPDF機能を使用するためにも、main.javaファイルに必要です。
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.Paths;
Javaを使用して2つのPDFソースファイルを結合するIronPDF
PDFファイルを結合するには、まずPDFファイルを作成し、それらを最終的に結合されたPDFファイルに変換する必要があります。次のコードサンプルはそれを実行します:
String htmlA = "<p> [PDF_A] </p>"
+ "<p> [PDF_A] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_A] 2nd Page</p>";
String htmlB = "<p> [PDF_B] </p>"
+ "<p> [PDF_B] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_B] 2nd Page</p>";
//document and PdfReader objects
PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
PdfDocument merged = PdfDocument.merge(pdfA, pdfB);
上記のコードは、HTMLマークアップを含む二つの文字列を作成します。各変数のHTMLコンテンツは二ページにわたります。 次に、IronPDF のrenderHtmlAsPdf メソッドが呼び出され、両方の HTML 文字列が個別の PDF ドキュメントに変換されます。
PDFファイルを結合する方法はPdfDocument.merge
です。 このメソッドは上述のように呼び出され、2つのPDFドキュメントを1つのPDFドキュメントに統合します。 結果は、2つ目のPdfDocumentの内容を1つ目のPdfDocumentの最後に追加することで生成される新しいPdfDocument
です。
複数のPDFドキュメントをマージして保存
マージされたPDFファイルを希望の保存先のファイルパスに保存するには、以下のワンライナーを使用してください:
merged.saveAs(Paths.get("assets/merged.pdf"));
結合されたPDFファイルの出力は以下の通りです:
2つ以上のPDFファイルを結合
2つ以上のPDFドキュメントを結合するには、まず必要なPdfDocument
オブジェクトを含むコレクションを作成し、その後、そのリストを単一の引数としてPdfDocument.merge
メソッドに渡します。 コードは次のようになります:
import java.util.ArrayList;
import java.util.List;
public static void main(String [] args) throws IOException {
String htmlA = "<p> [PDF_A] </p>"
+ "<p> [PDF_A] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_A] 2nd Page</p>";
String htmlB = "<p> [PDF_B] </p>"
+ "<p> [PDF_B] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_B] 2nd Page</p>";
String htmlC = "<p> [PDF_C] </p>"
+ "<p> [PDF_C] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_C] 2nd Page</p>";
String htmlD = "<p> [PDF_D] </p>"
+ "<p> [PDF_D] 1st Page </p>"
+ "<div style = 'page-break-after: always;' ></div>"
+ "<p> [PDF_D] 2nd Page</p>";
PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
PdfDocument pdfC = PdfDocument.renderHtmlAsPdf(htmlC);
PdfDocument pdfD = PdfDocument.renderHtmlAsPdf(htmlD);
List<PdfDocument> pdfs = new ArrayList<>();
pdfs.add(pdfA);
pdfs.add(pdfB);
pdfs.add(pdfC);
pdfs.add(pdfD);
PdfDocument merged = PdfDocument.merge(pdfs);
merged.saveAs(Paths.get("assets/more_than_two_merged.pdf"));
}
上記のようにHTMLレンダーメソッドを使用して4つのPDFドキュメントが作成されました。 次に、新しいList
コレクションに各PDFを格納し、このリストを1つの引数としてマージメソッドに渡します。 その結果、これらのPDFは1つのPDFドキュメントにマージされます。
結論
この記事では、IronPDF for Java を使用してPDFファイルを結合する方法について説明しました。
まず、Mavenを使用してIronPDF for Javaをインストールする方法を説明し、次にHTMLレンダリングメソッドを使用してPDFを生成する簡単な方法を示しました。 その後、複数のPDFを1つのPDFファイルに統合する方法を学びました。
IronPDFは非常に優れたパフォーマンスを発揮し、すべての操作を迅速かつ正確に実行します。 それは、JavaでPDFファイルを扱うのに非常に優れたオプションです。 さらに、それはIronPDF for .NETの機能に基づいています。
Java用IronEngineは、HTML、CSS、JS、JPG、PNGなどのオープン標準文書タイプを使用して、HTML、URL、文字列をPDFに変換することを可能にします。 ピクセル単位の完璧なPDFドキュメントを生成し、最新の技術を使用して構築されています。
Java向けIronPDFの使用方法に関する詳細情報は、コード例ページからご覧いただけます。
IronPDFは開発には無料で使用でき、商用利用にはライセンスが必要です。 ライセンスに関する詳細情報は、次のリンクをご覧ください。