PDFファイルをC#でマージする

複数のPDFファイルを1つのPDFにマージすると、さまざまなシナリオで役立つ可能性があります。たとえば、同様のドキュメント(履歴書など)を1つのファイルにまとめたり、一括ではなく1つのファイルを共有したりできます。上記または同様の要件を満たすために、この記事では、C#で複数のPDFファイルをマージする方法を学習します。

PDFファイルをマージするためのC#.NET API-無料ダウンロード

Aspose.PDF for .NETは、PDFドキュメントを作成、編集、読み取り、または変換するための機能豊富なAPIです。 Aspose.PDF for .NETでは、他のPDF操作機能に加えて、PDFファイルをプログラムで結合またはマージすることもできます。 APIをダウンロードするか、NuGetパッケージマネージャーまたはVisualStudioのパッケージマネージャーコンソールを使用してインストールできます。

NuGetパッケージマネージャーを介したインストール

C#.NETで複数のPDFファイルをマージする

パッケージマネージャーコンソールを介したインストール

PM> Install-Package Aspose.PDF

2つのPDFファイルをC#でマージする

2つのPDFファイルを1つのPDFにマージするプロセスは、パイのように単純で、2つのステップでのみ実行できます。

以下は、C#を使用して2つのPDFファイルをマージするためのコードサンプルです。

// PdfFileEditorオブジェクトを作成します
PdfFileEditor pdfEditor = new PdfFileEditor();
// ファイルをマージする
pdfEditor.Concatenate("file1.pdf", "file2.pdf", "merged.pdf");

C#で複数のPDFファイルをマージする

3つ以上のPDFファイルをマージする場合は、マージするすべてのPDFファイルのパスを含む文字列配列を使用してマージできます。この操作を実行する手順は次のとおりです。

  • PdfFileEditorクラスのインスタンスを作成します。
  • マージするPDFファイルのパスを含む配列を作成します。
  • PdfFileEditor.Concatenate(string[], string)メソッドを呼び出します。

次のコードサンプルは、複数のPDFファイルをマージする方法を示しています。

// PdfFileEditorオブジェクトを作成します
PdfFileEditor pdfEditor = new PdfFileEditor();
// PDFファイルのパスの配列を作成します
string[] filesArray = new string[3];
filesArray[0] = "file1.pdf";
filesArray[1] = "file2.pdf";
filesArray[2] = "file3.pdf";
// ファイルをマージする
pdfEditor.Concatenate(filesArray, "merged.pdf");

C#ストリームを使用してPDFファイルをマージする

ディスク上にあるファイルを処理していない場合があります。代わりに、ストリームの形式で利用可能なPDFファイルをマージする必要があります。このような場合、オーバーロードされたPdfFileEditor.Concatenate()メソッドのStreamオブジェクトを使用してPDFを直接マージできます。次のコードサンプルは、Streamオブジェクトを使用してPDFファイルをマージする方法を示しています。

ストリームオブジェクトを使用して2つのPDFファイルをマージする

// PdfFileEditorオブジェクトを作成します
PdfFileEditor pdfEditor = new PdfFileEditor();
// 出力ストリーム
FileStream outputStream = new FileStream("Merged.pdf", FileMode.Create);
// 入力ストリーム
FileStream inputStream1 = new FileStream("file1.pdf", FileMode.Open);
FileStream inputStream2 = new FileStream("file2.pdf", FileMode.Open);
// ファイルをマージする
pdfEditor.Concatenate(inputStream1, inputStream2, outputStream);

ストリームオブジェクトを使用して複数のPDFファイルをマージする

// PdfFileEditorオブジェクトを作成します
PdfFileEditor pdfEditor = new PdfFileEditor();
// 出力ストリーム
FileStream outputStream = new FileStream("Merged.pdf", FileMode.Create);
// ストリームの配列を作成します 
FileStream[] streamArray = new FileStream[3];
streamArray[0] = new FileStream("file1.pdf", FileMode.Open);
streamArray[1] = new FileStream("file2.pdf", FileMode.Open);
streamArray[2] = new FileStream("file3.pdf", FileMode.Open);
// ファイルをマージする
pdfEditor.Concatenate(streamArray, outputStream);

結論

この記事では、C#.NETでプログラムによってPDFファイルをマージする方法を学習しました。さらに、この記事では、2つのPDFファイルまたは複数(2つ以上)のPDFファイルを1つのPDFにマージする方法について明示的に説明します。 Aspose.PDF for .NETについて詳しく知りたい場合は、ドキュメントをご覧ください。

関連項目