IronPDFを使ってC#でPDFに画像を追加・画像をPDFに変換する方法
IronPDFは画像タグを含むHTMLをPDFドキュメントに変換し、外部依存やインターネット接続なしに画像を表示する自己完結型ファイルを作成することで、画像をPDFに直接埋め込むことを可能にします。
クイックスタート: 画像 PDF 変換 — PDFに画像を簡単に埋め込む
.NET C#でIronPDFを使用してPDFファイルに画像を埋め込んでみましょう。 画像を Base64 文字列に変換し、HTML の <img> タグに埋め込むと、外部ファイルを必要としない自己完結型の PDF が生成されます。 この方法では、インターネットにアクセスしなくても画像が表示されます。
-
IronPDF をNuGetパッケージマネージャでインストール
PM > Install-Package IronPdf -
このコード スニペットをコピーして実行します。
new IronPdf.ChromePdfRenderer() .RenderHtmlAsPdf("<img src='data:image/png;base64," + Convert.ToBase64String(File.ReadAllBytes("logo.png")) + "'>") .SaveAs("image-embedded.pdf"); -
実際の環境でテストするためにデプロイする
今日プロジェクトで IronPDF を使い始めましょう無料トライアル
最小限のワークフロー(5ステップ)
- IronPdfのC#ライブラリをダウンロードする.
- 埋め込む画像ファイルを準備する
- HTMLに画像を埋め込むには、`img`タグを使用してください。
- `RenderHtmlAsPdf`メソッドを使用してHTMLをPDFにレンダリングします。
- Base64エンコーディングを使用して画像を埋め込む
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");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private html As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export PDF
pdf.SaveAs("embedImage.pdf")
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");
Imports IronPdf
Imports System
Imports System.IO
Private renderer As New ChromePdfRenderer()
' Import image file binary data
Private binaryData() As Byte = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg")
' Convert the binary data to base 64
Private imgDataUri As String = Convert.ToBase64String(binaryData)
' Embed in HTML
Private html As String = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>"
' Convert HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("embedImageBase64.pdf")
次に何ができるのかを見てみましょうか? チュートリアルのページはこちらをご覧ください:追加機能。
よくある質問
C# で PDF 文書に画像を追加するには?
IronPDFを使えば、タグを使って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のタグに直接埋め込みます。IronPDFのRenderHtmlAsPdfメソッドはこのBase64エンコードされた画像を処理し、PDFに埋め込み、自己完結型のドキュメントを作成します。
画像を埋め込んでも、CSSのスタイルやレイアウトは維持されますか?
はい、IronPDFのChromeレンダリングエンジンは画像付きHTMLをPDFに変換する際、CSSレイアウトとスタイルを保持します。このライブラリはレスポンシブCSSレイアウトをサポートし、画像がウェブブラウザで表示されるように正確にレンダリングされることを保証します。

