
さまざまなシナリオで、2つ以上のPDFドキュメントを1つのファイルにマージする必要があります。たとえば、PDFのマージでは、同様の種類のドキュメントを組み合わせることができます。さらに、オンラインで共有したり、誰かに送信したりする前に、複数のPDFを1つのPDFにマージすることができます。この記事では、この機能を自動化し、Javaを使用してプログラムで複数のPDFファイルをマージする方法を示します。
PDFファイルをマージするJavaAPI
Aspose.PDF for Javaは機能豊富なPDFAPIであり、数行のコード内で複数のPDFドキュメントを非常に簡単にマージできます。 APIのJARをダウンロードするか、次の構成を使用してMavenベースのアプリケーションにインストールできます。
リポジトリ:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
依存:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>20.5</version>
<classifier>jdk17</classifier>
</dependency>
Javaで2つのPDFファイルを1つのPDFにマージ
最初に、2つのPDFファイルのみをマージするという単純なシナリオを確認してみましょう。これは2、3の手順で実行できます。
- PdfFileEditorクラスのインスタンスを作成します。
- PdfFileEditor.concatenate(String firstInputFile、String secInputFile、String outputFile)メソッドを使用してPDFファイルをマージします。
次のコードサンプルは、Javaを使用して2つのPDFファイルを1つのPDFにマージする方法を示しています。
// PDFエディタを作成する
PdfFileEditor fileEditor = new PdfFileEditor();
// 2つのPDFファイルをマージします
fileEditor.concatenate("file1.pdf", "file2.pdf", "merged-pdf.pdf");
Javaを使用して複数のPDFファイルをマージする
前の例では、2つのPDFファイルのみを1つのPDFにマージしました。ただし、3つ以上のPDFファイルをマージする必要がある場合があります。このような場合、連結メソッドへのPDFファイルのパスに配列を渡すことができます。この操作を実行する手順は次のとおりです。
- PdfFileEditorクラスのインスタンスを作成します。
- PDFファイルのパスを文字列配列に入れます。
- PdfFileEditor.concatenate(String[] inputFiles, String outputFile)メソッドを使用してPDFファイルをマージします。
次のコードサンプルは、Javaを使用して複数のPDFファイルを単一のPDFにマージする方法を示しています。
// PdfFileEditorオブジェクトを作成します
PdfFileEditor fileEditor = new PdfFileEditor();
String[] files = new String[] { "file1.pdf", "file2.pdf", "pdf3.pdf" };
// 複数のPDFファイルをマージする
fileEditor.concatenate(files, "merged-pdf.pdf");
JavaでInputStreamを使用してPDFファイルをマージする
InputStreamの形式でPDFファイルを処理している場合は、InputStreamオブジェクトを直接渡し、マージされたPDFをOutputStreamオブジェクトとして取得できます。以下は、InputStreamオブジェクトにロードされたPDFファイルをマージする手順です。
- PdfFileEditorクラスのインスタンスを作成します。
- PDFファイルをInputStreamオブジェクトにロードします。
- PdfFileEditor.concatenate(InputStream firstInputStream, InputStream secInputStream, OutputStream outputStream)メソッドを使用してPDFをマージします。
次のコードサンプルは、JavaでInputStreamオブジェクトを使用してPDFファイルをマージする方法を示しています。
// PdfFileEditorオブジェクトを作成します
PdfFileEditor fileEditor = new PdfFileEditor();
// 最初のPDFファイル
InputStream stream1 = new FileInputStream("file1.pdf");
// 2番目のPDFファイル
InputStream stream2 = new FileInputStream("file2.pdf");
// マージされたPDFのOutputStream
OutputStream outstream = new FileOutputStream("merged.pdf");
// PDFファイルをマージする
fileEditor.concatenate(stream1, stream2, outstream);
結論
この記事では、Javaを使用してプログラムでPDFファイルをマージする方法を学習しました。コードサンプルとステップバイステップガイドは、物理パスまたはInputStreamオブジェクトを使用して2つまたは3つ以上のPDFファイルをマージする方法を示しています。 ドキュメントを使用して、JavaPDFMergerライブラリの詳細を学ぶことができます。