C#で画像をPDFに変換

場合によっては、PNGJPG、またはその他の画像ファイルを 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 への変換を簡単に実行できます。

関連項目