場合によっては、PNG、JPG、またはその他の画像ファイルを PDF ドキュメントに変換する必要があります。これは、スキャンした請求書のページを PDF に変換するなどのシナリオで役立ちます。この記事では、C# で画像を PDF 形式に変換する方法を学習します。画像から PDF への変換、および複数の画像から PDF へのプログラムによる変換を示します。
C# Image to PDF Converter API - 無料ダウンロード
画像から PDF への変換には、Aspsoe.PDF for .NET を使用します。これは、.NET アプリケーション内から PDF ファイルを作成および操作できる強力な PDF API です。また、PDF ファイルの高忠実度の相互変換も提供します。 API を ダウンロード するか、NuGet を使用してインストールできます。
PM> Install-Package Aspose.Pdf
C# で画像を PDF に変換する
まず、C# で単一の画像を PDF ファイルに変換する方法を見てみましょう。この操作を実行する手順は次のとおりです。
- Document クラスのインスタンスを作成します。
- Document.Pages.Add() メソッドを使用して PDF ドキュメントに新しい Page を追加し、ページのプロパティを設定します。
- 画像ファイルを FileStream オブジェクトに読み込みます。
- Page.Paragraphs.Add(Image) メソッドを使用して、新しい Image をページに追加します。
- Image.ImageStream プロパティを使用して画像のストリームを設定します。
- 最後に、Document.Save(String) メソッドを使用して PDF ドキュメントを保存します。
次のコード サンプルは、C# で PNG 画像を PDF に変換する方法を示しています。
// 新しいドキュメントを作成する
Document doc = new Document();
// 画像ファイルのパス
string imageFile = @"aspose.png";
// ドキュメントのページ コレクションにページを追加します
var page = doc.Pages.Add();
// 画像をストリームにロード
FileStream imageStream = new FileStream(imageFile, FileMode.Open);
// 画像が収まるように余白を設定するなど。
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Aspose.Pdf.Rectangle(0, 0, 400, 400);
// 画像オブジェクトを作成する
Image image1 = new Image();
// セクションの段落コレクションに画像を追加します
page.Paragraphs.Add(image1);
// 画像ファイル ストリームを設定する
image1.ImageStream = imageStream;
// 結果のPDFファイルを保存
doc.Save("image-to-pdf.pdf");
C# で複数の画像を PDF に変換する
以下は、C# で複数の画像を 1 つの PDF ファイルに変換する手順です。
- Document クラスのインスタンスを作成します。
- Directory.GetFiles(string) メソッドを使用して、配列内の画像ファイルの名前のリストを取得します。
- リスト内のイメージ ファイルごとに、次の操作を行います。
- Document.Pages.Add() メソッドを使用して PDF ドキュメントに新しい Page を追加し、ページのプロパティを設定します。
- 画像ファイルを FileStream オブジェクトに読み込みます。
- Page.Paragraphs.Add(Image) メソッドを使用して、新しい Image をページに追加します。
- Image.ImageStream プロパティを使用して画像のストリームを設定します。
- 最後に、Document.Save(String) メソッドを使用して PDF ドキュメントを保存します。
次のコード サンプルは、C# で複数の画像を 1 つの PDF に変換する方法を示しています。
// 新しいドキュメントを作成する
Document doc = new Document();
// フォルダ内の画像ファイルにアクセスする
string[] fileList = Directory.GetFiles(@"D:/images/");
foreach (String file in fileList)
{
// ドキュメントのページ コレクションにページを追加します
var page = doc.Pages.Add();
// 画像をストリームにロード
FileStream imageStream = new FileStream(file, FileMode.Open);
// 画像が収まるように余白を設定するなど。
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Pdf.Rectangle(0, 0, 400, 400);
// 画像オブジェクトを作成する
Image image1 = new Image();
// セクションの段落コレクションに画像を追加します
page.Paragraphs.Add(image1);
// 画像ファイル ストリームを設定する
image1.ImageStream = imageStream;
}
// 結果のPDFファイルを保存
doc.Save("multiple-images-to-pdf.pdf");
Image to PDF C# Converter - 無料ライセンスを取得
無料の一時ライセンスを取得することで、評価制限なしで画像を PDF に変換できます。
C# .NET PDF API - 続きを読む
ドキュメント を使用して、Aspose.PDF for .NET の詳細を調べることができます。ご不明な点がございましたら、フォーラム からお気軽にお問い合わせください。
結論
この記事では、C# で画像を PDF 形式に変換する方法を学習しました。また、複数の画像をプログラムで単一の PDF に変換する方法も見てきました。したがって、アプリケーションであらゆる種類の画像から PDF への変換を簡単に実行できます。