How to Convert HTML String to PDF in C#
IronPDFはChromeレンダリングエンジンを使ってC#でHTML文字列をPDFドキュメントに変換し、基本的な変換は1行のコードですべてのHTML5、CSS3、JavaScriptコンテンツをサポートします。 このライブラリは、完璧なレンダリング忠実度を維持しながらPDFを作成するための強力な機能を提供します。
IronPDFは、.NET Coreおよび.NET Framework用にC#、F#、VB.NETで簡単にPDFドキュメントを作成できるように開発者を支援します。 IronPDFはあらゆるHTML文字列をPDFにレンダリングすることをサポートし、レンダリングプロセスはGoogle Chromiumエンジンのフル機能バージョンを使用します。これにより、HTMLコンテンツが最新のウェブブラウザで表示されるのとまったく同じように表示され、動的なHTMLコンテンツからレポート、請求書、ドキュメントを生成するのに理想的です。
クイックスタート: HTML 文字列を数秒で PDF に変換するIronPDFを使ってHTML文字列をPDFファイルに変換します。 このガイドでは、C#で最小限のコードでHTML文字列をPDF文書に変換する方法を示します。 PDFレンダリング機能をプロジェクトに組み込む必要のある開発者に最適です。
-
1Install IronPDF with NuGet Package Manager
-
2このコード スニペットをコピーして実行します。
IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("<p>Hello World</p>").SaveAs("string-to-pdf.pdf");C# -
3実際の環境でテストするためにデプロイする
今日プロジェクトで IronPDF を使い始めましょう無料トライアル
最小限のワークフロー(5ステップ)

- NuGetからIronPDF C#ライブラリをダウンロードする。
- PDFレンダラーをインスタンス化し、HTML文字列を渡します
- PDFの外部アセットのためのBasePathを設定します
- 出力PDFを微調整するためにRenderingOptionsを設定します。
- 生成されたPDFを保存してダウンロードします
単純な HTML 文字列を PDF に変換するにはどうすればよいですか?
IronPDF が HTML 文字列を PDF にレンダリングする RenderHtmlAsPdf メソッドの例です。 パラメータは、PDFにレンダリングされるHTML文字列です。 このメソッドは ChromePdfRenderer クラスの一部であり、PDF 生成のニーズに合わせて レンダリングオプション を広範に制御できます。
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")RenderHtmlAsPdf メソッドは PdfDocument オブジェクトを返し、PDF 情報を保持し、PDF のマージ、透かし追加、セキュリティオプション設定 などの操作メソッドを提供します。
ASP.NET Core、Blazor、またはバックグラウンドサービスでは、スレッドのブロッキングを避けるために非同期バリアント RenderHtmlAsPdfAsync を優先してください。 返される PdfDocument は IDisposable を実装しているため、高スループットシナリオでは using ブロックにラップしてください。 ChromePdfRenderer はスレッドセーフであり、より良いパフォーマンスのために一度インスタンス化し、リクエスト間で再利用できます。
外部ソースから HTML 文字列を取得してローカルディスク アクセスやクロスオリジン リクエストを無効にする必要がある場合は、レンダリング前にIronPdf.Installation.EnableWebSecurity を true に設定します。 これは静的なグローバル設定であり、レンダラーのインスタンスプロパティではありません。
// Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = true;' Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = TrueCSSスタイルを含む複雑なHTMLコンテンツの場合は、ベースURLとアセットエンコーディング機能を使用して、インラインスタイルでHTML文字列を強化するか、外部スタイルシートを参照してください:
// Example with inline CSS
var styledHtml = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; border-bottom: 2px solid #0066cc; }
p { line-height: 1.6; }
</style>
</head>
<body>
<h1>Professional Report</h1>
<p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";
using var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");Dim styledHtml As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; border-bottom: 2px solid #0066cc; }
p { line-height: 1.6; }
</style>
</head>
<body>
<h1>Professional Report</h1>
<p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>"
Using styledPdf = renderer.RenderHtmlAsPdf(styledHtml)
styledPdf.SaveAs("styled-output.pdf")
End Using生成されたPDFはどのように見えますか?
これはコードによって生成されたファイルです:
生成されたPDFは、HTMLの書式とスタイルを正確に維持するため、PDFレポートの生成や、Webコンテンツを印刷可能なドキュメントに変換するのに最適です。
HTMLをPDFに変換するときに外部アセットを含めるにはどうすればよいですか?
この例では、IronPDFがオプションのBasePathから外部の画像アセットを読み込むことを示しています。 BaseUrlOrPath プロパティを設定すると、ハイパーリンク、画像、CSS、JavaScript ファイルの相対ファイルパスや URL コンテキストが得られます。 これは、PDF内の画像を扱う場合や、外部リソースを参照する必要がある場合に不可欠です。
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Private myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")複雑なレイアウトやダイナミックコンテンツを含む高度なシナリオには、IronPDFのJavaScriptレンダリングサポートをご利用ください:
// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
<script>
window.onload = function() {
document.getElementById('dynamic').innerHTML =
'Generated on: ' + new Date().toLocaleString();
};
</script>
</head>
<body>
<h1>Dynamic Content Example</h1>
<div id='dynamic'></div>
</body>
</html>";
// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500); // milliseconds
using var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");Imports System.IO
' Example with JavaScript-generated content
Dim jsHtml As String = "
<html>
<head>
<script>
window.onload = function() {
document.getElementById('dynamic').innerHTML =
'Generated on: ' + new Date().toLocaleString();
};
</script>
</head>
<body>
<h1>Dynamic Content Example</h1>
<div id='dynamic'></div>
</body>
</html>"
' Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500) ' milliseconds
Using dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, "C:\site\")
dynamicPdf.SaveAs("dynamic-content.pdf")
End Using外部資産を扱う場合、認証や特別なヘッダーを扱う必要があるかもしれません。 IronPDFはHTTP Request Header機能を通してこれをサポートし、リソースを取得する際に認証トークンやカスタムヘッダーを含めることができます。
外部リソースに BasePath を設定することが重要なのはなぜですか?
これはコードによって生成されたファイルです:
BasePath を正しく設定すると、HTML 内のすべての相対参照が正しく解決されます。 これがないと、IronPDFは画像、スタイルシート、スクリプトのような外部リソースを見つけることができません。これは特に次のような場合に重要です:
- ローカルファイルシステムリソースを参照するHTMLの変換
- 相対URLを使用するコンテンツ管理システムの運用
- 既存のWebコンテンツをPDF形式に移行する
- 共有アセットを使用するテンプレートを作成する
ウェブベースのリソースについては、ベースパスとして完全なURLを使用してください:
// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
"<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>",
"https://mywebsite.com"
);' Using a web URL as base path
Dim webBasedPdf = renderer.RenderHtmlAsPdf(
"<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>",
"https://mywebsite.com"
)PDF生成プロセスをさらにコントロールするために、カスタムマージン、ページの向き、PDF圧縮に関するIronPDFの広範なドキュメントを参照して、さまざまな使用ケースに合わせて出力ファイルを最適化してください。
よくある質問
C# で単純な HTML 文字列を PDF に変換す る には ど う すれば よ いで し ょ う か。
IronPDFのChromePdfRendererクラスのRenderHtmlAsPdfメソッドを使ってHTML文字列をPDFに変換することができます。レンダラーをインスタンス化し、HTML文字列をメソッドに渡し、結果のPdfDocumentオブジェクトを保存するだけです。IronPDFはChromeのレンダリングエンジンを使用して、完璧な忠実性を保証します。
HTMLからPDFへの変換にはどのようなレンダリングエンジンを使用しますか?
IronPDFはHTMLをPDFにレンダリングするためにGoogle Chromiumエンジンの完全な機能を使用しています。これにより、HTML5、CSS3、JavaScriptを含むHTMLコンテンツが最新のウェブブラウザで表示されるのとまったく同じように表示されます。
CSSスタイル付きのHTMLをPDFに変換できますか?
はい、IronPDFはCSSスタイル付きのHTMLをPDFに変換することをサポートしています。HTML文字列で直接インラインスタイルを使用するか、ベースURLとアセットエンコーディング機能を使って外部スタイルシートを参照し、スタイル付きコンテンツの適切なレンダリングを保証することができます。
HTMLをPDFに変換する最も速い方法は何ですか?
最も手っ取り早い方法はIronPDFの静的メソッドを使うことです:IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("Your HTML").SaveAs("output.pdf").この一行のコードでHTML文字列を変換し、PDFファイルとして保存します。
HTML文字列を変換する際、外部資産はどのように扱えばよいですか?
IronPDFはPDF内の外部アセットのBasePathを設定することができます。これにより、HTMLで参照されている画像、スタイルシート、その他のリソースが変換処理中に適切に読み込まれるようになります。
HTMLから変換する際、PDF出力をカスタマイズできますか?
はい、IronPDFはレンダリングオプションでPDF出力を微調整できます。ChromePdfRendererクラスを通して、ページサイズ、余白、ヘッダー、フッター、その他生成されるPDFの多くの側面を制御できます。
変換後に生成されたPDFで何ができますか?
IronPDFのPdfDocumentオブジェクトはPDFのマージ、透かしの追加、セキュリティオプションの設定など、PDFを操作するための多くのメソッドを提供します。変換されたPDFはディスクに保存したり、ストリーミングしたり、必要に応じてさらに処理することができます。
外部ソースからHTMLを変換する際のセキュリティはどうすればよいですか?
外部ソースからHTMLを変換する際、IronPDFではChromePdfRendererのEnableWebSecurityプロパティをtrueに設定することができます。これによりローカルディスクへのアクセスとクロスオリジンリクエストが無効になり、セキュリティが強化されます。
How can I ensure my external web resources are correctly referenced in IronPDF?
To ensure external web resources are correctly referenced, specify the correct `BasePath` or use a full URL as the base path for web-based content. This includes images, stylesheets, and scripts.
What is the role of `ChromePdfRenderer` in IronPDF?
The `ChromePdfRenderer` in IronPDF is responsible for converting HTML to PDF. It uses a fully functional version of the Google Chromium engine to ensure accurate rendering as seen in a web browser.

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