C#でHTMLファイルをPDFにレンダリングする方法

IronPDFを使ってHTMLファイルをC#でPDFにレンダリングする

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

IronPDFはC#でHTMLファイルをPDFドキュメントに変換し、Chromeベースのエンジンを通してレンダリングします。

IronPDFはマシンがアクセスできるあらゆるHTMLファイルをレンダリングし、PDF生成のための簡単なソリューションにします。

クイックスタート: IronPDFを使用して HTML ファイルを PDF に変換する

わずか数行のコードでIronPDFを使ってHTMLファイルをPDFに変換します。 ChromePdfRenderer クラスはHTMLコンテンツを迅速にPDFドキュメントに変換します。 HTMLファイルのパスを指定すると、IronPDFが変換を行います。 この合理化されたプロセスは、C#アプリケーションにPDF生成機能を追加するのに理想的です。

  1. IronPDF をNuGetパッケージマネージャでインストール

    PM > Install-Package IronPdf
  2. このコード スニペットをコピーして実行します。

    new IronPdf.ChromePdfRenderer()
      .RenderHtmlFileAsPdf("path/to/your/file.html")
      .SaveAs("output.pdf");
  3. 実際の環境でテストするためにデプロイする

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

    arrow pointer

IronPDFを使ってHTMLファイルをPDFに変換するには?

IronPDFはRenderHtmlFileAsPdf() メソッドを使用して、HTMLファイルをPDFにレンダリングします。 パラメータはローカルHTMLファイルへのファイルパスです。

この方法により、開発者は開発中にブラウザでHTMLコンテンツをテストすることができます。 変換前にレンダリングの忠実度を確認することができます。 IronPDFのレンダリングエンジンはChromeをベースにしているため、Chromeを推奨します。

Chromeで正しく表示されれば、IronPDFでも正確に表示されます。 正確なレンダリング要件については、ChromeでHTMLをデバッグするガイドをチェックして、PDFが期待に沿うようにしてください。

どのようなHTMLコンテンツを変換できますか?

これはコードがレンダリングするexample.html HTMLファイルです:


<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>

<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
HTML

ウェブ上でレンダリングされたHTMLファイルが以下に表示されています。

IronPDFはCSS3、JavaScript、画像、フォントを含む高度なHTML機能をサポートしています。 レンダリング オプションの詳細については、ヘッダー、フッター、余白などを使用して PDF 出力をカスタマイズしてください。

どのようにC#で変換を実装すればよいですか?

:path=/static-assets/pdf/content-code-examples/how-to/html-file-to-pdf.cs
using IronPdf;
using IronPdf.Engines.Chrome;
using IronPdf.Rendering;


var renderer = new ChromePdfRenderer
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        CssMediaType = PdfCssMediaType.Print,
        MarginBottom = 0,
        MarginLeft = 0,
        MarginRight = 0,
        MarginTop = 0,
        Timeout = 120,
    },
};
renderer.RenderingOptions.WaitFor.RenderDelay(50);

// Create a PDF from an existing HTML file using C#
var pdf = renderer.RenderHtmlFileAsPdf("example.html");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
Imports IronPdf
Imports IronPdf.Engines.Chrome
Imports IronPdf.Rendering


Private renderer = New ChromePdfRenderer With {
	.RenderingOptions = New ChromePdfRenderOptions With {
		.CssMediaType = PdfCssMediaType.Print,
		.MarginBottom = 0,
		.MarginLeft = 0,
		.MarginRight = 0,
		.MarginTop = 0,
		.Timeout = 120
	}
}
renderer.RenderingOptions.WaitFor.RenderDelay(50)

' Create a PDF from an existing HTML file using C#
Dim pdf = renderer.RenderHtmlFileAsPdf("example.html")

' Export to a file or Stream
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

RenderHtmlFileAsPdf() メソッドはPDF情報を保持するPdfDocument オブジェクトを返します。 たとえば、ヘッダーとフッターを追加したり透かしを入れたり複数のPDFを1つの文書にマージしたりできます。

レンダリングオプションは、出力をカスタマイズします。 CssMediaTypePrint に設定すると、印刷専用のCSSルールが適用され、マージン設定により全面印刷のドキュメントが作成されます。 120秒のタイムアウトにより、外部リソースを含む複雑なHTMLファイルを完全に読み込むことができます。

50ミリ秒のRenderDelay により、PDF作成前にすべてのリソースが読み込まれることを保証します。 これは、JavaScriptを多用するページに役立ちます。 動的コンテンツを含む複雑なシナリオについては、JavaScriptレンダリングに関するガイドをご覧ください。

最終的なPDF出力はどのようになりますか?

これはコードが生成したPDFファイルです。

Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

Chromeのデフォルト印刷オプションを使用するには、ChromePdfRenderOptions クラスのDefaultChrome プロパティにアクセスし、それをRenderingOptions に割り当てます。 この設定により、IronPDFの出力はChromeの印刷プレビューと正確に一致します。

:path=/static-assets/pdf/content-code-examples/how-to/html-file-to-pdf-default-chrome.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure the rendering options to default Chrome options
renderer.RenderingOptions = ChromePdfRenderOptions.DefaultChrome;
Imports IronPdf

Private renderer As New ChromePdfRenderer()

' Configure the rendering options to default Chrome options
renderer.RenderingOptions = ChromePdfRenderOptions.DefaultChrome
$vbLabelText   $csharpLabel

Chromeのデフォルト設定は、ユーザーがブラウザから印刷するときに表示されるPDFと同じにしたい場合に有効です。 このアプローチでは、改ページ、ヘッダー/フッターフォーマット、標準的な余白などの一般的な印刷設定を自動的に処理します。

Icon Quote related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

私のお気に入りのこの種のライブラリはIronPDFです。PDFファイルの迅速で効率的な操作が可能です。また、PDF/A形式へのエクスポートやPDF文書へのデジタル署名といった多くの貴重な機能も備えています。

Milan Jovanovic related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

Milan Jovanovic

Microsoft MVP

ケーススタディを見る
Icon Quote related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

IronOCRのおかげで私たちは年間$40,000を手作業の処理から節約し、生産性を向上させ、高影響のタスクにリソースを充てることができます。非常にお勧めします。

Brent Matzelle related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

Brent Matzelle

最高技術責任者, OPYN

ケーススタディを見る
Icon Quote related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

IronSuiteは私たちの業務において重要な役割を果たしています。これらは、フロアプランの作成や在庫管理の改善を含め、ビジネス全体の効率を向上させるツールです。

David Jones related to Chromeのデフォルトの印刷設定を使用するにはどうすればよいですか?

David Jones

リードソフトウェアエンジニア、Agorus Build

ケーススタディを見る

追加の変換オプション

IronPDFはPDF生成ワークフローを強化するいくつかの関連機能を提供します:

  • HTML文字列からの変換:HTML を動的に生成し、最初にファイルに保存することなく、HTML 文字列を直接 PDF に変換します。
  • URLからPDFへURLを PDF に変換するに関するガイドで、ライブ ウェブサイトを変換します。
  • HTML ZIPアーカイブ:複数のリソースを持つ複雑なプロジェクトでは、HTMLのZIPファイルをPDFに変換する方法を学んでください。
  • カスタムハイフネーションChromePdfRenderOptionsHyphenationLanguage プロパティを介してハイフネーションをサポートします。 生成されたPDFで自動単語区切りを有効にするために、特定の言語とともにhyphens: auto をCSSで設定します。 高度なユースケースでは、CustomHyphenation プロパティはカスタムハイフネーションパターンを受け付け、言語ベースのオプションよりも優先されます。

パフォーマンスの考慮事項

本番環境でHTMLファイルをPDFに変換する場合は、以下の最適化を考慮してください:

1.非同期操作:アプリケーションの応答性を高めるために、非同期 PDF 生成メソッドを使用してください。 2.キャッシュ:同じ HTML ファイルを複数回変換するときに、結果の PDF をキャッシュして、レンダリングが繰り返されないようにします。

  1. リソース管理:メモリリソースを解放するために、終了したら常にPdfDocument オブジェクトを破棄してください。
  2. バッチ処理:複数のファイルを変換する場合、より良いパフォーマンスのために同じChromePdfRenderer インスタンスを再利用します。

一般的な問題のトラブルシューティング

HTMLからPDFへの変換中に問題が発生した場合は、以下のソリューションをお試しください:

  • 不足しているリソース: HTMLで参照されているすべてのCSS、JavaScript、画像ファイルが、ファイルの場所からアクセスできるようにしてください。
  • フォントレンダリング:システム間で一貫したフォントレンダリングを行うには、HTMLにフォントを埋め込むか、フォント管理ガイドを参照してください。
  • 大きなファイル:多くの画像や複雑なレイアウトのあるHTMLファイルでは、PDF圧縮技術を使ってファイルサイズを小さくしてください。

次に何ができるのかを見てみましょうか? 私たちのチュートリアルページをご覧ください: PDFの変換

よくある質問

HTMLからPDFへの変換にはどのようなレンダリングエンジンを使用しますか?

IronPDFはChromeベースのレンダリングエンジンを使ってHTMLファイルをPDFに変換します。これにより、HTMLコンテンツがChromeブラウザで表示されるのと同じように、PDFで正確にレンダリングされます。

C#でHTMLファイルをPDFに変換するには?

RenderHtmlFileAsPdfメソッドでIronPDFのChromePdfRendererクラスを使用してください。HTMLファイルのパスをパラメータとして渡し、SaveAsメソッドを使って出力を保存するだけです。変換に必要なコードはほんの数行です。

PDF変換ではどのようなHTML機能がサポートされていますか?

IronPDFはCSS3、JavaScript、画像、フォントを含む高度なHTML機能をサポートしています。Chromeベースのエンジンは変換プロセスにおいて最新のウェブ標準との完全な互換性を保証します。

ヘッダーやフッターを使ってPDF出力をカスタマイズできますか?

はい、IronPDFはPDF出力を広範囲にカスタマイズできます。ヘッダーやフッターの追加、透かしの適用、余白の設定、複数のPDFのマージなどが可能です。RenderingOptions設定により、最終的なドキュメントを細かく制御できます。

PDFに変換する前に、HTMLが正しくレンダリングされるようにするにはどうすればよいですか?

変換前にChromeブラウザでHTMLコンテンツをテストしてください。IronPDFはChromeベースのレンダリングエンジンを使用しているため、Chromeで正しく表示されたコンテンツはPDFでも正確に表示されます。正確な要件については、ピクセルパーフェクトなレンダリングのためにIronPDFのデバッグガイドをご利用ください。

変換メソッドはどのようなオブジェクト型を返しますか?

RenderHtmlFileAsPdfメソッドはPdfDocumentオブジェクトを返します。このオブジェクトはすべてのPDF情報を含み、透かしの追加や他のPDFとの結合のような追加操作のためにさらに操作することができます。

Curtis Chau
テクニカルライター

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

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

準備はできましたか?
Nuget ダウンロード 19,936,792 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPdf
サンプルを実行するHTML が PDF に変換されるのを確認します。