.NET CoreでIronPDFを使用してPDFを生成する方法
.NET CoreでPDFファイルを生成するには、IronPDFのChromePdfRendererを使用して、HTML文字列、Webページ、またはRazorビューをわずか数行のコードでPDFドキュメントに変換し、すべてのCSSスタイリングとJavaScript機能を保持します。
.NET Coreアプリケーションで PDF ドキュメントを作成することは、請求書、レポート、その他のビジネス ドキュメントを生成する必要がある Web アプリケーションを構築するときによく必要になります。 IronPDFは、Chromeレンダリングエンジンを通じてASP.NET CoreでのPDF生成を簡素化し、常にピクセルパーフェクトなPDFを生成する、フル機能のPDFライブラリを提供します。このガイドでは、単純なHTML変換からC#トップレベルステートメントを使用した複雑なレポート生成まで、 .NET 10環境で様々なPDF生成タスクを処理する方法を説明します。
.NET Core はどのように PDF ファイルを生成するのでしょうか?
IronPDF はChrome ベースのレンダリング エンジンを使用して HTML コンテンツを PDF ファイルに変換します。 このアプローチにより、複雑で低レベルの PDF API を学習したり、急な学習曲線に対処したりすることなく、既存の HTML と CSS の知識を使用して PDF を作成できます。 このライブラリは、 JavaScript の実行とレスポンシブな CSS レイアウトをサポートし、Web ページの変換を自動的に処理します。
ライブラリの API を使用すると、HTML 文字列、URL、またはローカル HTML ファイルから PDF ドキュメントを生成できます。 HTML を PDF に変換する際、 IronPDF は複雑なレイアウト、CSS スタイル、 JavaScript実行、および動的な Web コンテンツを保持します。 これにより、アプリケーションで信頼性の高いPDF 変換機能を必要とする.NET開発者にとって実用的な選択肢となります。
レンダリング プロセスでは、Google Chrome と同じテクノロジーが使用されるため、HTML から PDF への変換が、ユーザーが最新のブラウザで見るものと一致するようになります。 これには、CSS3 機能、Web フォント、SVG グラフィック、Flexbox や CSS Grid などの最新のレイアウト システムのサポートが含まれます。 レンダリング エンジンは Chrome ベースであるため、開発環境、ステージング環境、本番環境全体で出力が予測可能かつ一貫しています。
.NET 10 プロジェクトにIronPDFをインストールするにはどうすればいいですか?
開始するには、 NuGetパッケージ マネージャーを介して 1 回のインストールが必要です。 ワークフローに応じて 2 つのオプションがあります。
オプション 1: Visual Studio のパッケージ マネージャー コンソール
Install-Package IronPdf
Install-Package IronPdf
オプション 2: .NET CLI
dotnet add package IronPdf
dotnet add package IronPdf
ステップバイステップのインストール・ウォークスルーについては、NuGetインストール・ガイドを参照してください。
Docker デプロイメントまたは Linux 環境の場合、追加のシステム依存関係が必要になる場合があります。 IronPDF はmacOS、Windows、Linux、Azure、AWS Lambda をサポートしており、さまざまなホスティング シナリオに適応できます。 インストール後、試用ライセンス キーを追加して、開発中に完全な機能セットのロックを解除します。 試用版は無料で、クレジットカードも必要ありません。そのため、商用ライセンスを購入する前にライブラリを十分に評価することができます。
HTML 文字列から PDF を生成するにはどうすればよいでしょうか?
PDF を作成する最も直接的な方法は、HTML コンテンツを変換することです。 以下は、C# のトップレベルステートメントを使用した最小限の例です。
using IronPdf;
// Instantiate the renderer
var renderer = new ChromePdfRenderer();
// Convert an HTML string to PDF
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF generated from HTML.</p>");
// Save to disk
pdf.SaveAs("hello.pdf");
using IronPdf;
// Instantiate the renderer
var renderer = new ChromePdfRenderer();
// Convert an HTML string to PDF
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF generated from HTML.</p>");
// Save to disk
pdf.SaveAs("hello.pdf");
Imports IronPdf
' Instantiate the renderer
Dim renderer As New ChromePdfRenderer()
' Convert an HTML string to PDF
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF generated from HTML.</p>")
' Save to disk
pdf.SaveAs("hello.pdf")
CODE-1580--@@クラスが変換処理を行います。 返されたPdfDocument@オブジェクトは、バイナリデータ、ページ数、ファイルやメモリストリームへの保存などの出力オプションへのアクセスを提供します。 タイトル、著者、件名キーワードなどのメタデータを出力ファイルに添付することもできます。
レンダラーは幅広いレンダリング オプションをサポートしています。 カスタム余白の設定、用紙サイズの設定、ページの向きの制御、ビューポートのサイズの調整を行うことができます。 これらのオプションにより、PDF 出力が専門的なドキュメントの特定の書式設定要件を満たすようになります。
CSS スタイルを使用して PDF 請求書を作成するにはどうすればよいですか?
より現実的な例として、HTML マークアップと CSS を使用してスタイル設定された請求書ドキュメントを生成する方法を次に示します。
using IronPdf;
var html = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; font-size: 14px; }
.invoice-header {
background-color: #2c3e50;
color: white;
padding: 20px;
}
.invoice-details { margin: 20px 0; }
table { width: 100%; border-collapse: collapse; }
th, td {
padding: 12px;
text-align: left;
border-bottom: 1px solid #ddd;
}
.total {
font-size: 1.2em;
font-weight: bold;
text-align: right;
}
</style>
</head>
<body>
<div class='invoice-header'>
<h1>Invoice #2026-001</h1>
<p>Date: February 28, 2026</p>
</div>
<div class='invoice-details'>
<h3>Bill To: Jane Smith</h3>
<table>
<tr>
<th>Item</th>
<th>Quantity</th>
<th>Price</th>
</tr>
<tr>
<td>Professional License</td>
<td>1</td>
<td>$749.00</td>
</tr>
</table>
<p class='total'>Total: $749.00</p>
</div>
</body>
</html>";
var renderer = new ChromePdfRenderer();
// Apply custom margins
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("invoice.pdf");
using IronPdf;
var html = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; font-size: 14px; }
.invoice-header {
background-color: #2c3e50;
color: white;
padding: 20px;
}
.invoice-details { margin: 20px 0; }
table { width: 100%; border-collapse: collapse; }
th, td {
padding: 12px;
text-align: left;
border-bottom: 1px solid #ddd;
}
.total {
font-size: 1.2em;
font-weight: bold;
text-align: right;
}
</style>
</head>
<body>
<div class='invoice-header'>
<h1>Invoice #2026-001</h1>
<p>Date: February 28, 2026</p>
</div>
<div class='invoice-details'>
<h3>Bill To: Jane Smith</h3>
<table>
<tr>
<th>Item</th>
<th>Quantity</th>
<th>Price</th>
</tr>
<tr>
<td>Professional License</td>
<td>1</td>
<td>$749.00</td>
</tr>
</table>
<p class='total'>Total: $749.00</p>
</div>
</body>
</html>";
var renderer = new ChromePdfRenderer();
// Apply custom margins
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("invoice.pdf");
Imports IronPdf
Dim html As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; font-size: 14px; }
.invoice-header {
background-color: #2c3e50;
color: white;
padding: 20px;
}
.invoice-details { margin: 20px 0; }
table { width: 100%; border-collapse: collapse; }
th, td {
padding: 12px;
text-align: left;
border-bottom: 1px solid #ddd;
}
.total {
font-size: 1.2em;
font-weight: bold;
text-align: right;
}
</style>
</head>
<body>
<div class='invoice-header'>
<h1>Invoice #2026-001</h1>
<p>Date: February 28, 2026</p>
</div>
<div class='invoice-details'>
<h3>Bill To: Jane Smith</h3>
<table>
<tr>
<th>Item</th>
<th>Quantity</th>
<th>Price</th>
</tr>
<tr>
<td>Professional License</td>
<td>1</td>
<td>$749.00</td>
</tr>
</table>
<p class='total'>Total: $749.00</p>
</div>
</body>
</html>"
Dim renderer As New ChromePdfRenderer()
' Apply custom margins
renderer.RenderingOptions.MarginTop = 10
renderer.RenderingOptions.MarginBottom = 10
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("invoice.pdf")
この例では、フォント ファミリ設定、背景色、表の書式設定など、CSS スタイルを使用して複雑なレイアウトを処理する IronPDF の機能を示します。 ライブラリは HTML マークアップを処理し、ソース ドキュメントの外観に一致する PDF を生成します。
タイポグラフィを改善するために、 IronPDF はGoogle Fonts と Web アイコン フォントをサポートしており、視覚的に洗練された PDF を作成できます。 ライブラリは階層化されたドキュメント デザインも処理します。 既存の PDF にカスタムの透かしやスタンプ コンテンツを追加できます。
生成された PDF 請求書はどのように見えますか?

どのようにWebページのURLをPDFに変換しますか?
IronPDF は、レンダラーに URL を渡すことで、ライブ Web ページから PDF を生成できます。 これは、Web コンテンツを動的にキャプチャしたり、公開ページをアーカイブしたりする必要がある場合に便利です。
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure viewport and JavaScript settings
renderer.RenderingOptions.ViewPortWidth = 1920;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.WaitFor.RenderDelay(1500); // Allow dynamic content to load
// Render the URL to PDF
var pdf = renderer.RenderUrlAsPdf("https://example.com");
// Save to disk
pdf.SaveAs("webpage.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure viewport and JavaScript settings
renderer.RenderingOptions.ViewPortWidth = 1920;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.WaitFor.RenderDelay(1500); // Allow dynamic content to load
// Render the URL to PDF
var pdf = renderer.RenderUrlAsPdf("https://example.com");
// Save to disk
pdf.SaveAs("webpage.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Configure viewport and JavaScript settings
renderer.RenderingOptions.ViewPortWidth = 1920
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
renderer.RenderingOptions.WaitFor.RenderDelay(1500) ' Allow dynamic content to load
' Render the URL to PDF
Dim pdf = renderer.RenderUrlAsPdf("https://example.com")
' Save to disk
pdf.SaveAs("webpage.pdf")
CODE-1582--@@@設定は、JavaScript駆動コンテンツ(チャート、遅延ロード画像、動的テーブル)がPDFを取り込む前にレンダリングを終了することを保証します。 また、WaitFor条件を設定して、特定のDOM要素やネットワーク要求が完了するのを待つこともできます。 認証が必要なページの場合、ライブラリは HTTP リクエスト ヘッダーとカスタム Cookie をサポートします。
Angular または React で構築された複雑なシングルページ アプリケーションの場合、追加の待機条件により、PDF スナップショットが取得される前にすべてのクライアント側レンダリングが完了することが保証されます。

PDF 生成をASP.NET Coreコントローラーに統合するにはどうすればよいですか?
ASP.NET Core Web API 内で PDF を生成するのは簡単です。 次の例は、HTML レポートを作成し、それをファイルのダウンロードとして返すコントローラー アクションを示しています。
using Microsoft.AspNetCore.Mvc;
using IronPdf;
[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
[HttpGet("generate-report")]
public IActionResult GenerateReport()
{
var html = @"
<h1>Monthly Sales Report</h1>
<p>Generated on: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
<table>
<tr><th>Product</th><th>Sales</th></tr>
<tr><td>Product A</td><td>$5,000</td></tr>
<tr><td>Product B</td><td>$3,500</td></tr>
</table>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Return the PDF bytes as a downloadable file
return File(pdf.BinaryData, "application/pdf", "monthly-report.pdf");
}
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
[HttpGet("generate-report")]
public IActionResult GenerateReport()
{
var html = @"
<h1>Monthly Sales Report</h1>
<p>Generated on: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
<table>
<tr><th>Product</th><th>Sales</th></tr>
<tr><td>Product A</td><td>$5,000</td></tr>
<tr><td>Product B</td><td>$3,500</td></tr>
</table>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Return the PDF bytes as a downloadable file
return File(pdf.BinaryData, "application/pdf", "monthly-report.pdf");
}
}
Imports Microsoft.AspNetCore.Mvc
Imports IronPdf
<ApiController>
<Route("api/[controller]")>
Public Class PdfController
Inherits ControllerBase
<HttpGet("generate-report")>
Public Function GenerateReport() As IActionResult
Dim html As String = "
<h1>Monthly Sales Report</h1>
<p>Generated on: " & DateTime.Now.ToString("MMMM dd, yyyy") & "</p>
<table>
<tr><th>Product</th><th>Sales</th></tr>
<tr><td>Product A</td><td>$5,000</td></tr>
<tr><td>Product B</td><td>$3,500</td></tr>
</table>"
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Return the PDF bytes as a downloadable file
Return File(pdf.BinaryData, "application/pdf", "monthly-report.pdf")
End Function
End Class
CODE-1584--@@@ 戻り値タイプは、ASP.NET Coreに、生のPDFバイトを正しいMIMEタイプでクライアントブラウザにストリーミングするように指示します。 クライアントは、ディスク上に中間ファイルなしでダウンロード可能な PDF を受け取ります。 各ページにヘッダーとフッターを追加したり、下書きや機密文書に透かしを適用したりできます。
実稼働アプリケーションでは、特に大規模または複雑なドキュメントを生成するときに、非同期 PDF 生成を使用してリクエスト パイプラインを非ブロッキング状態に保つことを検討してください。
MVC でRazorビューを PDF にレンダリングするにはどうすればよいですか?
MVC アプリケーションの場合、 Razorビューを HTML 文字列にレンダリングし、それを PDF に変換できます。 このパターンでは、ドキュメントテンプレートを標準の.cshtmlファイル内に保持します:
[HttpGet]
public async Task<IActionResult> DownloadInvoice(int id)
{
// Fetch invoice data from the database
var model = await GetInvoiceData(id);
// Render the Razor view to an HTML string
var html = await RenderViewToString("Invoice", model);
// Convert the rendered HTML から PDF へ
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Return the file to the browser
return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf");
}
[HttpGet]
public async Task<IActionResult> DownloadInvoice(int id)
{
// Fetch invoice data from the database
var model = await GetInvoiceData(id);
// Render the Razor view to an HTML string
var html = await RenderViewToString("Invoice", model);
// Convert the rendered HTML から PDF へ
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Return the file to the browser
return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf");
}
Imports System.Threading.Tasks
Imports Microsoft.AspNetCore.Mvc
<HttpGet>
Public Async Function DownloadInvoice(id As Integer) As Task(Of IActionResult)
' Fetch invoice data from the database
Dim model = Await GetInvoiceData(id)
' Render the Razor view to an HTML string
Dim html = Await RenderViewToString("Invoice", model)
' Convert the rendered HTML to PDF
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Return the file to the browser
Return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf")
End Function
このアプローチにより、モデル バインディングと部分ビューを使用して、請求書またはレポート テンプレートを通常のRazorビューとして維持できます。 CODE-1586--@@ヘルパーメソッド(MVCプロジェクトでよく使われるユーティリティ)はビューをプレーンなHTML文字列に変換し、IronPDFはそれを処理します。 Razor Pages またはBlazor Server プロジェクトの場合も、同様のパターンが適用されます。

IronPDF はどのような高度な PDF 機能をサポートしていますか?
基本的な HTML から PDF への変換以外にも、 IronPDF は幅広いドキュメント操作機能を提供します。
-結合と分割:結合と分割 APIを使用して、複数の PDF を結合したり、特定のページを抽出したりできます。 -デジタル署名: ドキュメントの認証に証明書ベースのデジタル署名を適用する -テキスト抽出: 検索インデックス作成やデータ処理のためにPDF文書からテキストを抽出します
- PDF フォーム: 自動化されたドキュメント ワークフローのためにプログラムでPDF フォームを作成および入力できます。
- PDFページを画像に変換: PDFページをサムネイルやプレビュー用の画像にエクスポートします
- HTML文字列レンダリング: HTML文字列からPDFへの変換オプションを細かく制御 -セキュリティ: パスワード保護、暗号化、権限制御により機密文書を安全に保護します
パフォーマンスが重要なワークロードに対して、 IronPDF は非同期メソッドとマルチスレッド サポートを提供します。 このライブラリは、画像から PDF への変換、PDF の圧縮、および Web 表示を高速化するための線形化も処理します。
| 特徴 | 翻訳内容 | 典型的な使用例 |
|---|---|---|
| HTML から PDF へ | HTML 文字列、ファイル、または URL を PDF に変換します | 請求書、レポート、ウェブページのアーカイブ |
| RazorをPDFに | Razorビュー (.cshtml) を PDF にレンダリングします | MVC およびRazor Pages アプリケーション |
| 結合/分割 | PDF文書を結合または分割します | ドキュメントのバンドル、ページの抽出 |
| デジタル署名 | X.509証明書署名を適用する | 法的文書、契約ワークフロー |
| テキスト抽出 | 既存のPDFからテキストコンテンツを読み取ります | 検索インデックス、データ移行 |
| PDFフォーム | インタラクティブなフォームフィールドを作成して入力します | 自動データ収集 |
| ヘッダーとフッター | ページ番号、日付、カスタムテキストを追加します | プロフェッショナルなドキュメントフォーマット |
.NET 10 でIronPDFを使い始めるにはどうすればよいでしょうか?
IronPDF を使用すると、 .NET Coreでの PDF 生成が簡単になります。 Chrome レンダリング エンジンにより、HTML コンテンツから PDF を作成する際の正確な忠実度が保証され、API 設計により PDF 操作に伴う一般的な複雑さが排除されます。 このライブラリは、すべての機能に関する完全なドキュメントを提供し、Windows、Linux、macOS、Azure Functions、AWS Lambda、Docker コンテナーへのデプロイをサポートしています。
請求書、レポート、ドキュメント管理ツールなどを作成する場合でも、 IronPDF はプロフェッショナルな PDF 作成に必要なツールを提供します。 完全な機能リストを確認してライブラリの機能の全範囲を理解するか、個々の開発者やエンタープライズ チームに適したライセンス オプションを確認してください。
今すぐ無料トライアルを開始して、独自の.NET 10 プロジェクトでIronPDF をテストしてください。 試用ライセンスでは完全な機能セットがカバーされるため、ライセンスを購入する前に PDF の生成、結合、署名、フォームの入力、テキスト抽出を評価できます。
追加のコンテキストについては、 IronPDFドキュメント ホームで、API リファレンス、プラットフォーム ガイド、一般的な.NET PDF シナリオをカバーするコード例を参照してください。
外部参照:
よくある質問
.NET CoreでPDFドキュメントを生成するにはどうすればよいですか?
IronPDF を使用して .NET Core で PDF ドキュメントを生成できます。このエンジンでは、HTML、URL、Razor ビューから PDF を作成することができ、Chrome の高度なレンダリング エンジンを利用しています。
PDF生成にIronPDFを使用する利点は何ですか?
IronPDF は統合の容易さ、ピクセル パーフェクト レンダリングのサポート、HTML や URL などのさまざまなソースからの PDF の作成機能など、多くの利点を提供し、PDF 生成を必要とする Web アプリケーションの構築に最適です。
IronPDFは複雑なPDF生成タスクを処理できますか?
はい、IronPDF は .NET 環境で複雑な PDF 生成タスクを処理するように設計されており、開発者に詳細で正確な PDF ドキュメントを作成するために必要なツールを提供します。
IronPDF における Chrome レンダリング エンジンの役割は何ですか?
IronPDF の Chrome レンダリング エンジンは、生成された PDF がピクセル パーフェクトで、元の HTML または Web コンテンツの忠実性を維持することを保証します。
IronPDF は請求書やレポートのようなビジネス ドキュメントを生成するのに適していますか?
もちろん、IronPDFは正確なレンダリングと多様なドキュメント形式のサポートを提供し、ビジネスドキュメント生成に非常に適しています。
IronPDF はどのような入力を PDF に変換できますか?
IronPDF は HTML、URL、Razor ビューなどの入力を PDF ドキュメントに変換でき、コンテンツ作成に柔軟性を提供します。
IronPDF は ASP.NET Core アプリケーションをサポートしていますか?
はい、IronPDF は ASP.NET Core アプリケーションと完全に互換性があり、開発者が Web プロジェクトに PDF 生成機能をシームレスに統合できるようにします。
Web アプリケーションにおける IronPDF の一般的な使用例は何ですか?
IronPDF の一般的な使用例には、Web アプリケーションが必要とする請求書、レポート、およびその他のビジネス文書の PDF 生成が含まれます。


