C#でPDFに画像を追加する方法

IronPDFを使ってC#でPDFに画像を追加する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDFは画像タグを含むHTMLをPDFドキュメントに変換し、外部依存やインターネット接続なしに画像を表示する自己完結型ファイルを作成することで、画像をPDFに直接埋め込むことを可能にします。

クイックスタート: 画像をPDFに簡単に埋め込む

.NET C#でIronPDFを使用してPDFファイルに画像を埋め込んでみましょう。 画像をBase64文字列に変換し、HTMLの<img>タグに埋め込んで、外部ファイルを必要としない自己完結型のPDFを生成します。 この方法では、インターネットにアクセスしなくても画像が表示されます。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronPDF をインストールします

    PM > Install-Package IronPdf

  2. このコード スニペットをコピーして実行します。

    new IronPdf.ChromePdfRenderer()
         .RenderHtmlAsPdf("<img src='data:image/png;base64," + Convert.ToBase64String(File.ReadAllBytes("logo.png")) + "'>")
         .SaveAs("image-embedded.pdf");
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronPDF を使い始めましょう
    arrow pointer


PDFに画像を埋め込むには?

PDFに画像を埋め込むには、まず<img>タグを使ってHTMLに画像を含めます。 次に、RenderHtmlAsPdfメソッドを使用して、HTMLをPDFに変換します。 既存のPDFがある場合は、画像スタンパまたはHTMLスタンパチュートリアルのいずれかを使用して、PDF文書に画像をスタンプします。 このアプローチはIronPDFのChromeレンダリングエンジンで動作します。

なぜ RenderHtmlAsPdf メソッドが最も効果的なのですか?

RenderHtmlAsPdfメソッドはIronPDFのChromeレンダリングエンジンを活用し、画像を含むHTMLコンテンツをレイアウトやスタイルを保持したままPDF形式に変換します。 この方法は、レスポンシブCSSレイアウトをサポートし、ウェブブラウザで表示されるとおりに画像がレンダリングされるようにします。 複雑なレイアウトについては、ピクセルパーフェクトなHTMLフォーマットのガイドをご覧ください。

どのような画像形式がサポートされていますか?

IronPdfはHTML変換による埋め込みにおいて、PNG、JPG、SVG、GIF、BMPを含むすべての主要な画像フォーマットをサポートします。 このライブラリは、SVGグラフィックスを効果的に処理し、スケーラブルなベクターイラストを作成します。 異なるフォーマットを使用する場合は、HTMLのsrc属性またはBase64データURIで画像タイプを適切に指定してください。

直接 URL と Base64 エンコーディングはいつ使い分けるべきか

画像がオンラインでホストされており、ファイルサイズが懸念される場合は、直接URLを使用してください。 インターネットへのアクセスを必要としない自己完結型のPDFには、Base64エンコーディングを選択してください。 クラウドサービスに保存されている画像については、Azure Blob Storageからの画像の埋め込みに関するガイドを参照してください。 この決定は、生成されたPDFのファイルサイズと移植性の両方に影響します。

:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-embed-image.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

string html = @"<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

// Export PDF
pdf.SaveAs("embedImage.pdf");
$vbLabelText   $csharpLabel

Base64を使って画像を埋め込むには?

HTMLに画像を埋め込むためにBase64を使用するには、まず画像ファイルを読み込むか、ネットワークリクエストで受信して画像のバイナリデータを取得します。.NETのConvert.ToBase64Stringメソッドを使用して、バイナリデータをBase64に変換します。HTMLでBase64データの前に "data:image/svg+xml;base64 "を使って画像タグを構築する。 画像タイプはBase64データの前に指定されることに注意してください。 画像フォーマットタイプの詳細については、MDNウェブドキュメントの画像フォーマットをご覧ください。

なぜ画像に Base64 エンコードを使用するのですか?

Base64エンコーディングは、外部リソースに依存しない自己完結型のPDFを作成するため、インターネットに接続されていなくても、また元の画像ファイルが移動または削除された場合でも、画像が常に表示されることを保証します。 このテクニックは、BlazorサーバーアプリケーションでPDFを作成するときや、外部ファイルアクセスが制限されている可能性のあるAzureにデプロイするときに役立ちます。 エンコードされた画像はHTML文字列の一部となるため、HTML文字列からPDFへの変換に最適です。

パフォーマンスに関する考慮事項は何ですか?

Base64エンコーディングは、ファイルサイズを約33%増加させますが、外部依存性を排除するため、アーカイブ目的や制限されたネットワーク環境に最適です。 パフォーマンスが重要な場合は、asyncPDF生成を使用して複数の画像変換を同時に処理することを検討してください。 大規模な運用については、パフォーマンスの最適化ガイドを参照して、スループットを最大化してください。

大きな画像ファイルをどのように扱えばよいですか?

大きな画像については、Base64エンコーディングの前に圧縮してPDFファイルサイズを最小にするか、ファイルサイズが重要な場合は外部URLを使用してください。 IronPDFはPDF圧縮機能を提供し、ファイルサイズを最大75%削減することができます。 複数の画像を扱う場合は、レンダリング設定を最適化して、品質とファイルサイズのバランスを最適化してください。

:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-base64-image.cs
using IronPdf;
using System;
using System.IO;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Import image file binary data
byte[] binaryData = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg");

// Convert the binary data to base 64
string imgDataUri = Convert.ToBase64String(binaryData);

// Embed in HTML
string html = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>";

// Convert HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

// Export the PDF
pdf.SaveAs("embedImageBase64.pdf");
$vbLabelText   $csharpLabel

次に何ができるのかを見てみましょうか? チュートリアルのページはこちらをご覧ください:追加機能

よくある質問

C# で PDF 文書に画像を追加するには?

IronPdfを使えば、 related to C# で PDF 文書に画像を追加するには?タグを使ってHTMLに画像を追加し、RenderHtmlAsPdfメソッドを使ってHTMLをPDFに変換することができます。この方法はIronPDFのChromeレンダリングエンジンを利用してPDFドキュメント内の画像を正確にレンダリングします。

PDFに埋め込める画像形式は?

IronPdfはHTML変換による埋め込みにおいて、PNG, JPG, SVG, GIF, BMPを含むすべての主要な画像フォーマットをサポートします。このライブラリは特にスケーラブルなベクターイラストのためのSVGグラフィックをうまく扱い、生成されたPDFで画像が適切にレンダリングされることを保証します。

画像には、直接URLとBase64エンコーディングのどちらを使うべきですか?

画像がオンラインでホストされており、ファイルサイズが懸念される場合は、直接URLを使用してください。インターネットアクセスを必要としない自己完結型のPDFを作成する場合は、IronPdfでBase64エンコーディングを選択してください。Base64エンコーディングは、PDFが外部依存なしに画像を表示することを保証します。

既存のPDFファイルに画像を追加できますか?

はい、IronPDFは画像スタンパまたはHTMLスタンパを使って既存のPDFに画像を追加することができます。この機能により、既存のPDF文書内の特定のページや位置に画像をオーバーレイすることができます。

PDF埋め込み用に画像をBase64に変換するには?

画像をBase64文字列に変換し、データURIを使ってHTMLの related to PDF埋め込み用に画像をBase64に変換するには?タグに直接埋め込みます。IronPDFのRenderHtmlAsPdfメソッドはこのBase64エンコードされた画像を処理し、PDFに埋め込み、自己完結型のドキュメントを作成します。

画像を埋め込んでも、CSSのスタイルやレイアウトは維持されますか?

はい、IronPDFのChromeレンダリングエンジンは画像付きHTMLをPDFに変換する際、CSSレイアウトとスタイルを保持します。このライブラリはレスポンシブCSSレイアウトをサポートし、画像がウェブブラウザで表示されるように正確にレンダリングされることを保証します。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

レビュー済み
Jeff Fritz
Jeffrey T. Fritz
プリンシパルプログラムマネージャー - .NETコミュニティチーム
Jeffはまた、.NETとVisual Studioチームのプリンシパルプログラムマネージャーです。彼は.NET Conf仮想会議シリーズのエグゼクティブプロデューサーであり、週に二回放送される開発者向けライブストリーム『Fritz and Friends』のホストを務め、テクノロジーについて話すことや視聴者と一緒にコードを書くことをしています。Jeffはワークショップ、プレゼンテーション、およびMicrosoft Build、Microsoft Ignite、.NET Conf、Microsoft MVPサミットを含む最大のMicrosoft開発者イベントのコンテンツを企画しています。
準備はできましたか?
Nuget ダウンロード 17,012,929 | バージョン: 2025.12 リリース