IRONSOFTWAREHOME

C# .NETでのHTMLからPDFへの変換

Jacob Mellor、Ironチームの最高技術責任者(CTO)
Jacob Mellor
Updated: 2026年9月17日

IronPDFの開発者として、HTMLからPDFへの変換が顧客の期待に応える正確で高品質な結果を生み出すことがいかに重要であるかを理解しています。このC#チュートリアルでは、アプリケーション、プロジェクト、ウェブサイト用のHTMLからPDFへのコンバーターを構築する方法を案内します。C# HTMLからPDFへのコンバーターを開発し、IronPDFからの出力PDFドキュメントは、Google Chromeウェブブラウザによって生成されたPDFとピクセル単位で一致します。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

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

    IronPdf.ChromePdfRenderer
           .StaticRenderHtmlAsPdf("<p>Hello World</p>")
           .SaveAs("pixelperfect.pdf");
  3. 3実際の環境でテストするためにデプロイする

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

概要


C# & VB.NET用HTMLからPDFへのコンバーター

.NETでプログラム的にPDFファイルを作成することは、フラストレーションを感じる作業になることがあります。PDFドキュメントファイル形式は、開発者よりもプリンター向けに設計されています。そして、C#にはPDF生成に適したライブラリや機能があまり組み込まれておらず、多くのライブラリは追加のセットアップが必要で、単純なタスクを達成するために複数行のコードを必要とするため、さらにフラストレーションを引き起こします。

このチュートリアルで使用するC# HTMLからPDFへの変換ツールは、Iron SoftwareによるIronPDFです。これは非常に人気のあるC# PDF生成および編集ライブラリです。このライブラリは完全なPDF編集および生成機能を備えており、すぐに使用でき、最小限の行数で必要なことを正確に行い、50以上の機能の優れたドキュメントを備えています。IronPDFは、.NET 10, .NET 9, .NET 8, .NET 7, .NET 6, .NET 5、.NET Core、.NET Standard、および.NET FrameworkをWindows、macOS、Linux、Docker、Azure、AWSでサポートしている点で際立っています。

C#とIronPDFを使用すると、「PDFドキュメントを生成する」または「HTMLからPDFへの変換」のロジックは簡単です。IronPDFの高度なChromeレンダラーのおかげで、PDFドキュメントのデザインとレイアウトのほとんどまたはすべてが既存のHTMLアセットを使用します。

この.NETでのHTML5を使用した動的PDF生成の方法は、コンソールアプリケーション、Windows Formsアプリケーション、WPF、ウェブサイト、MVCでも同様にうまく機能します。

IronPDFはまた、ピクセルパーフェクトなPDFのためにChromeでHTMLをデバッグすることをサポートしています。これを設定するためのチュートリアルはこちらで見つけることができます。

IronPDFは、.NETエコシステム内外のいくつかの言語で利用可能です。

IronPDFは開発用に無料で使用できます。ライブデプロイと試用版の透かしを削除するにはライセンスキーが必要です。こちらでライセンスを購入するか、無料の30日間試用キーにサインアップすることができます。


ステップ1

HTMLからPDFへのC#ライブラリをダウンロードしてインストールする

Visual Studio - NuGetパッケージマネージャー

Visual Studioで、プロジェクトソリューションエクスプローラーを右クリックし、「NuGetパッケージの管理...」を選択します。そこからIronPDFを検索し、最新バージョンをソリューションにインストールします...表示されるダイアログボックスにOKをクリックします。これはVB.NETプロジェクトでも同様に機能します。

PM > Install-Package IronPdf

NuGetウェブサイトでのIronPDF

IronPDFの機能、互換性、ダウンロードの詳細については、NuGetの公式ウェブサイトでIronPDFをご覧ください:https://www.nuget.org/packages/IronPdf

DLL経由でのインストール

もう一つのオプションは、IronPDF DLLを直接インストールすることです。IronPDFはhttps://ironpdf.com/packages/IronPdf.zipからダウンロードしてプロジェクトまたはGACに手動でインストールできます。


チュートリアル

C# .NETでHTML文字列でPDFを作成する

方法:HTML文字列をPDFに変換するには? C#で新しいPDFファイルを作成することは非常に効率的でやりがいのあるスキルです。

ChromePdfRenderer.RenderHtmlAsPdfメソッドを使用して、任意のHTML(HTML5)文字列をPDFに変換することができます。C# HTMLからPDFへのレンダリングは、IronPDF NuGetパッケージに付属するGoogle Chromiumエンジンの完全な機能バージョンによって行われます。

using IronPdf;

// ChromePdfRenderer turns HTML into a PDF using IronPDF's embedded Chrome engine
var renderer = new ChromePdfRenderer();

// Render an HTML string. The result is a PdfDocument held in memory
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");

// Write the PDF to disk
pdf.SaveAs("pixel-perfect.pdf");

RenderHtmlAsPdfはHTML5、CSS3、JavaScript、画像を完全にサポートしています。これらのアセットがハードディスク上にある場合、RenderHtmlAsPdfの2番目のパラメータをアセットを含むディレクトリに設定することができます。このメソッドは、PDF情報を保持するために使用されるクラスであるPdfDocumentオブジェクトを返します。

IronPDFはChromeで表示される通りにHTMLをレンダリングします

HTML、CSS、JavaScriptを編集する際にChromeでの変更がIronPDFからの出力PDFとピクセル単位で同じであることを確認するために、Chromeを完全なHTMLデバッグ用に設定するためのチュートリアルがあります。チュートリアルはこちらでご覧ください:ChromeでHTMLをデバッグしてピクセルパーフェクトなPDFを作成する方法

ベースURLパスBaseUrlOrPath引数):

using IronPdf;

var renderer = new ChromePdfRenderer();

// The second argument is the base path. Relative URLs in the HTML (the image
// below, but also stylesheets, scripts and fonts) are resolved against it.
var pdf = renderer.RenderHtmlAsPdf("<img src='image1.png'/>", @"C:\MyProject\Assets\");

pdf.SaveAs(@"C:\MyProject\Assets\output.pdf");

すべての参照されたCSSスタイルシート、画像、JavaScriptファイルはそのベースパスに対して相対的であり、整然とした論理的な構造に保つことができます。また、もちろん、Google FontsやjQueryなどのウェブフォントを含むオンラインの画像、スタイルシート、アセットを参照することもできます。


既存のURLを使用してPDFをエクスポートする | URLからPDFへ

C#で既存のURLをPDFとしてレンダリングすることは非常に効率的で直感的です。これにより、チームがPDFデザインとバックエンドのPDFレンダリング作業を複数のチームに分割することができます。

次の例では、Wikipedia.comのページをレンダリングします:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render a live web page straight from its URL
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

// The PDF is written next to the executable
pdf.SaveAs("wikipedia.pdf");

生成されたPDFには、ハイパーリンクやHTMLフォームさえも保持されていることに気付くでしょう。

既存のウェブページをレンダリングする際には、適用したいトリックがいくつかあります:

印刷とスクリーンCSS

CSSメディアタイプを使用すると、ページに印刷用とスクリーン用の別々のスタイルを持たせることができます。IronPDFに「印刷」CSSをレンダリングするよう指示することができ、これは通常よりシンプルです。デフォルトでは「スクリーン」CSSスタイルがレンダリングされ、ブラウザで見るものと一致します。

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Choose which CSS media type the page is rendered with.
// Screen (the default) renders the page as a browser displays it;
// Print applies the page's @media print rules instead.

// renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

メイン記事:ピクセルパーフェクトなHTMLからPDFへの比較

JavaScript

IronPDFはJavaScript、jQuery、さらにはAJAXをサポートしています。ウェブページのスナップショットをレンダリングする前に、IronPDFにJavaScriptまたはAJAXの完了を待つよう指示する必要があるかもしれません。

using IronPdf;

var renderer = new ChromePdfRenderer();

// Let the page's JavaScript run before the snapshot is taken
renderer.RenderingOptions.EnableJavaScript = true;

// Give scripts and AJAX calls 500 milliseconds to finish before rendering.
// For event-driven pages, WaitFor.NetworkIdle() or WaitFor.JavaScript() wait
// for a signal instead of a fixed delay.
renderer.RenderingOptions.WaitFor.RenderDelay(500);

JavaScriptのサポートを示すために、ページが読み込まれるときにJavaScriptによってチャートが描画されるd3.js chord-diagramのドキュメントページをレンダリングします:

using IronPdf;

var renderer = new ChromePdfRenderer();

// The chart is drawn by JavaScript, so let it run and give it a moment to finish
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500);

// Render the d3.js chord-diagram documentation page, whose charts are drawn by JavaScript
var pdf = renderer.RenderUrlAsPdf("https://d3js.org/d3-chord");

pdf.SaveAs("chart.pdf");

レスポンシブCSS

.NETでレスポンシブCSSを使用してHTMLからPDFへ!レスポンシブウェブページはブラウザで表示されるように設計されています。IronPDFはサーバーのOS内で実際のブラウザウィンドウを開きません。ブラウザのビューポートがないと、レスポンシブレイアウトは最も狭いブレークポイントに戻ることがあります。

この問題を回避するために印刷CSSメディアタイプを使用することをお勧めします。印刷CSSは通常レスポンシブではないはずです。

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Responsive layouts are designed for a browser viewport, so render the page's
// print stylesheet instead of its screen stylesheet
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

HTMLページからPDFを生成する

ハードディスク上の任意のHTMLページをPDFにレンダリングすることもできます。CSS、画像、jsなどのすべての相対アセットは、ファイルが**file://**プロトコルを使用して開かれたかのようにレンダリングされます。

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render an HTML file from disk. Relative CSS, image and script paths
// resolve against the file's own folder, as if opened with file://
var pdf = renderer.RenderHtmlFileAsPdf("Assets/TestInvoice1.html");

pdf.SaveAs("Invoice.pdf");

この方法には、開発中にブラウザでHTMLコンテンツをテストする機会を開発者に提供する利点があります。IronPDFのレンダリングエンジンが基づいているウェブブラウザであるChromeをお勧めします。

XMLをPDFに変換するには、XSLTテンプレートを使用してXMLコンテンツをPDFに印刷することができます


カスタムヘッダーとフッターを追加する

ヘッダーとフッターは、IronPDFを使用してレンダリング時にPDFに追加することも、既存のPDFファイルに追加することもできます。

IronPDFを使用すると、ヘッダーとフッターには*TextHeaderFooterクラスを使用してシンプルなテキストベースのコンテンツを含めることができ、HtmlHeaderFooter*クラスを使用して画像やリッチHTMLコンテンツを含めることができます。

using IronPdf;
using IronPdf.Rendering;

// Create a PDF from an existing HTML file with rendering options set up front
var renderer = new ChromePdfRenderer
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        // Margins are in millimeters
        MarginTop = 50,
        MarginBottom = 50,

        // Render the page's print stylesheet
        CssMediaType = PdfCssMediaType.Print,

        // Plain-text header: the document title, centered, above a divider line
        TextHeader = new TextHeaderFooter
        {
            CenterText = "{pdf-title}",
            DrawDividerLine = true,
            FontSize = 16
        },

        // Plain-text footer: date and time on the left, page numbers on the right
        TextFooter = new TextHeaderFooter
        {
            LeftText = "{date} {time}",
            RightText = "Page {page} of {total-pages}",
            DrawDividerLine = true,
            FontSize = 14
        }
    }
};

var pdf = renderer.RenderHtmlFileAsPdf("Assets/TestInvoice1.html");

pdf.SaveAs("Invoice.pdf");

// Open the result in the default PDF viewer
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo
{
    FileName = "Invoice.pdf",
    UseShellExecute = true
});

次のハウツー記事で、すべてのレンダリングオプションを探求してください:レンダリングオプションの使用方法

HTMLヘッダーとフッター

HtmlHeaderFooterクラスを使用すると、画像やスタイルシートを含むHTML5コンテンツを使用してリッチなヘッダーとフッターを生成することができます。

using IronPdf;

var renderer = new ChromePdfRenderer();

// An HTML footer can carry markup, styles and images.
// {page} and {total-pages} are filled in for every page.
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"
};

PDFヘッダーとフッターの動的データ

プレースホルダーを使用して、ヘッダーとフッターのテキストやHTMLにコンテンツを「メールマージ」することができます:

  • {page} 現在のページ番号
  • {total-pages} PDFの総ページ数
  • {url} ウェブページからレンダリングされた場合のPDFのURL
  • {date} 今日の日付
  • {time} 現在の時刻
  • {html-title} レンダリングされたHTMLドキュメントの<title>
  • {pdf-title} ChromePdfRenderOptionsを介して設定されるドキュメントタイトル

C# HTMLからPDFへの変換設定

ユーザーやクライアントがPDFコンテンツのレンダリングに期待する方法には多くのニュアンスがあります。
ChromePdfRendererクラスには、これらのオプションを設定するために使用できるRenderingOptionsプロパティがあります。

たとえば、"print"スタイルのCSS3ディレクティブのみを受け入れるように選択することができます:

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Render the page's @media print CSS rather than its screen styles
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

renderer.RenderHtmlAsPdf("<html><body><h1>Hello, World!</h1></body></html>").SaveAs("Output.pdf");

また、印刷マージンのサイズを変更して、ページに余白を多く作り、大きなヘッダーやフッターのスペースを確保したり、パンフレットやポスターの商業印刷のためにゼロマージンを設定したりすることもできます:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Page margins in millimeters. Larger margins leave room for headers and
// footers; set them to 0 for edge-to-edge brochures and posters.
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

HTML要素からの背景画像をオンまたはオフにすることもできます:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Include CSS background colors and images in the PDF (set false to drop them)
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

var pdf = renderer.RenderHtmlAsPdf("<h1 style='background:#eee'>Hello, PDF!</h1>");

pdf.SaveAs("output.pdf");

出力PDFを任意の仮想用紙サイズでレンダリングすることも可能です。縦向きや横向きのサイズ、さらにはミリメートルやインチで設定できるカスタムサイズも含まれます。

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Standard paper sizes and orientation
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;

// Or a custom size, in millimeters or inches
// renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(210, 297);
// renderer.RenderingOptions.SetCustomPaperSizeInInches(8.5, 11);

次のハウツー記事で、すべてのレンダリングオプションを探求してください:「レンダリングオプションの使用方法。」


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

Milan Jovanovic

Microsoft MVP

ケーススタディを見る

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

Brent Matzelle

最高技術責任者, OPYN

ケーススタディを見る

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

David Jones

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

ケーススタディを見る

HTMLテンプレートの適用

インターネットやウェブサイトの開発者にとって、PDFをテンプレート化または「バッチ作成」することは一般的な要件です。

IronPDFを使用すると、PDFドキュメント自体をテンプレート化するのではなく、既存のよく試された技術を使用してHTMLをテンプレート化することができます。HTMLテンプレートがクエリ文字列やデータベースからのデータと組み合わされると、動的に生成されたPDFドキュメントが得られます。

最も単純な場合、C#のString.Formatメソッドを使用することは基本的なサンプルに効果的です。

using IronPdf;

var renderer = new ChromePdfRenderer();

// Insert a value into an HTML template with string.Format
string html = string.Format("<h1>Hello {0}!</h1>", "World");

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs("Hello.pdf");

HTMLファイルが長い場合、[[NAME]]のような任意のプレースホルダーを使用し、後で実際のデータに置き換えることがよくあります。

次の例では、各ユーザーにパーソナライズされた3つのPDFを作成します。

using IronPdf;

var renderer = new ChromePdfRenderer();

// A template with a placeholder to replace
var htmlTemplate = "<p>[[NAME]]</p>";

var names = new[] { "John", "James", "Jenny" };

// One personalized PDF per name
foreach (var name in names)
{
    var htmlInstance = htmlTemplate.Replace("[[NAME]]", name);

    var pdf = renderer.RenderHtmlAsPdf(htmlInstance);

    pdf.SaveAs(name + ".pdf");
}

Handlebars.NETを使用した高度なテンプレート化

C#データをHTMLとマージしてPDFを生成するための洗練された方法は、Handlebarsテンプレート言語を使用することです。

Handlebarsを使用すると、C#オブジェクトやクラスインスタンス、データベースレコードを含む動的なHTMLを作成することができます。Handlebarsは、請求書の生成など、クエリが不明な数の行を返す場合に特に効果的です。

まず、プロジェクトにHandlebars.Net NuGetパッケージを追加する必要があります。

using HandlebarsDotNet;

// A Handlebars template with two placeholders
var source =
    @"<div class=""entry"">
        <h1>{{title}}</h1>
        <div class=""body"">
            {{body}}
        </div>
    </div>";

// Compile it once, then fill it with any object that has matching properties
var template = Handlebars.Compile(source);

var data = new { title = "My new post", body = "This is my first post!" };

string html = template(data);

// html now contains:
//
// <div class="entry">
//   <h1>My new post</h1>
//   <div class="body">
//     This is my first post!
//   </div>
// </div>

このHTMLをレンダリングするには、単にRenderHtmlAsPdfメソッドを使用します。

using HandlebarsDotNet;
using IronPdf;

// Fill the Handlebars template, then render the resulting HTML
var template = Handlebars.Compile("<h1>{{title}}</h1><p>{{body}}</p>");
string html = template(new { title = "My new post", body = "This is my first post!" });

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs("Handlebars.pdf");

Handlebarsテンプレート言語とそのC#実装については、GitHubから詳しく学ぶことができます。

HTML5を使用したページブレークの追加

PDFドキュメントで一般的な要件はページネーションです。開発者は、PDFページの開始と終了を制御して、クリーンで読みやすいレイアウトを作成する必要があります。

これを行う最も簡単な方法は、印刷されたHTMLドキュメントにページブレークをレンダリングするあまり知られていないCSSトリックを使用することです。

<div style='page-break-after: always;'>&nbsp;</div>
HTML

提供されたHTMLは機能しますが、最善の方法ではありません。次の例のようにメディア属性を調整することをお勧めします。このように整然とした方法でマルチページHTMLコンテンツをレイアウトします。IronPDFはデフォルトでscreenメディアタイプでレンダリングするため、RenderingOptions.CssMediaTypePdfCssMediaType.Printに設定されている場合にのみmedia="print"スタイルシートが適用されます(上記の変換設定を参照)。

<!DOCTYPE html>
<html>
  <head>
    <style type="text/css" media="print">
      .page {
        page-break-after: always;
        page-break-inside: avoid;
      }
    </style>
  </head>
  <body>
    <div class="page">
      <h1>This is Page 1</h1>
    </div>
    <div class="page">
      <h1>This is Page 2</h1>
    </div>
    <div class="page">
      <h1>This is Page 3</h1>
    </div>
  </body>
</html>
HTML

ハウツーでは、ページブレークのヒントとトリックをさらに詳しく説明しています。


PDFにカバーページを添付する

IronPDFを使用すると、PDFドキュメントを簡単にマージできます。この技術の最も一般的な使用法は、既存のレンダリングされたPDFドキュメントにカバーページまたはバックページを追加することです。

これを行うには、まずカバーページをレンダリングし、次にPdfDocument.Merge()静的メソッドを使用して2つのドキュメントを結合します。

using IronPdf;

var renderer = new ChromePdfRenderer();

// The document body, rendered from a web page
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

// Prepend an existing PDF as the cover page. Merge returns a new document.
var cover = PdfDocument.FromFile("CoverPage.pdf");
var pdfMerged = PdfDocument.Merge(cover, pdf);

pdfMerged.SaveAs("Combined.pdf");

完全なコード例はこちらで見つけることができます:PDFカバーページコード例


透かしを追加する

IronPDFがサポートする最終的なC# PDF機能は、ドキュメントに透かしを追加することです。これを使用して、ドキュメントが「機密」または「サンプル」であることを各ページに通知することができます。

using IronPdf;
using IronPdf.Editing;

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

// Stamp every page with a red "SAMPLE" in the middle, rotated 30 degrees at 50% opacity.
// The watermark is HTML, so any markup, styling or image can be used.
pdf.ApplyWatermark(
    "<h2 style='color:red; font-size:50px'>SAMPLE</h2>",
    rotation: 30,
    opacity: 50,
    verticalAlignment: VerticalAlignment.Middle,
    horizontalAlignment: HorizontalAlignment.Center);

pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");

完全なコード例はこちらで見つけることができます:PDF透かしコード例


C#ソースコードをダウンロードする

このチュートリアルの無料HTMLからPDFへのコンバーターC#ソースコードは、Visual Studio 2022プロジェクトファイルとしてダウンロード可能です。C#でPDFドキュメントオブジェクトを生成するためにそのレンダリングエンジンを使用します。

このチュートリアルをVisual Studioプロジェクトとしてダウンロードする

無料ダウンロードには、HTMLからPDFを作成するために必要なすべてが含まれています - C# PDFコード例コードを含む:

  1. C#を使用してHTML文字列をPDFに変換する
  2. C#でHTMLファイルをPDFに(CSS、JavaScript、画像をサポート)
  3. C# HTMLからPDFへのURL(「URLからPDFへ」)
  4. C# PDF編集と設定の例
  5. JavaScriptキャンバスチャート(d3.jsなど)をPDFにレンダリングする
  6. C#用PDFライブラリ

クラスリファレンス

開発者はIronPdf.PdfDocumentクラスリファレンスにも興味があるかもしれません:

IronPdf.PdfDocumentクラスリファレンス

このオブジェクトモデルは、PDFドキュメントがどのように:

  • 暗号化され、パスワードで保護されるか
  • 編集または新しいHTMLコンテンツで「スタンプ」されるか
  • 前景と背景画像で強化されるか
  • ページまたはドキュメントレベルでマージ、結合、切り捨て、スプライスされるか
  • プレーンテキストと画像を抽出するために解析されるか、IronOCRパッケージでOCR処理されるか

Blazor HTMLからPDFへ

BlazorサーバーにHTMLからPDFへの機能を追加するのは簡単です。単に:

  1. 新しいBlazorサーバープロジェクトを作成するか、既存のものを使用する
  2. プロジェクトにIronPDFライブラリをNuGetを使用して追加する
  3. 新しいRazorコンポーネントを追加するか、既存のものを使用する
  4. InputTextAreaを追加し、IronPDFにリンクする
  5. IronPDFに任せてデプロイする

詳細な手順については、BlazorアプリケーションでHTMLをPDFに変換するための完全なステップバイステップガイドを参照してください。

IronPDFでBlazorサーバーページから生成されたPDF

他のPDFライブラリとの比較

IronPDFは、現代の.NET開発者向けに特化した強力でフル機能のPDFライブラリです。高度なChromiumエンジンによるネイティブHTMLからPDFへの変換、直感的なAPI、定期的な更新により、開発を簡素化しながら高品質な結果を保証します。他のツールとどのように比較されるかを詳しく見てみましょう:

PDFSharp

  • コア機能: PDFsharpは、管理コードでPDFドキュメントを作成および編集するためのオープンソース(MIT)ライブラリです。HTMLレンダリングエンジンを持たないため、WebコンテンツをPDFに変換するには、別のサードパーティのレンダラーが必要です。
  • 最新の標準: IronPDFは、Chromiumベースのエンジンを通じてHTML、CSS、JavaScriptなどの最新のWeb技術を活用し、PDFが現代的な外観と感触を維持することを保証します。
  • サポートと更新: PDFsharpはオープンソースであり、数か月ごとにリリースを行い、商業サポートはメンテナーによって別途販売されます。IronPDFは毎月リリースとセキュリティパッチを提供し、すべてのライセンスにはプロフェッショナルなエンジニアリングサポートが含まれており、企業アプリケーションにとって重要です。

wkhtmltopdf

  • 統合の容易さ: wkhtmltopdfはCライブラリを持つコマンドラインツールであり、公式の.NETパッケージはありません。そのため、.NETから使用するにはネイティブバイナリを起動する(またはDinkToPdfなどのサードパーティラッパーを介して呼び出す)必要があり、デプロイするすべてのプラットフォームにそのバイナリを提供する必要があります。
  • レンダリング技術: wkhtmltopdfはQtWebKitでレンダリングしますが、Qtは2015年にこのWebKitフォークを非推奨とし、Qt 5.6で削除しました。そのため、特に動的でコンテンツが豊富なWebサイトでは、最新のJavaScriptおよびCSS機能がサポートされません。IronPDFのChromiumエンジンは現在のWeb標準をレンダリングします。
  • 継続的な開発: wkhtmltopdfの最後のリリースは2020年6月の0.12.6であり、そのGitHubリポジトリは2023年1月にアーカイブされました。そのため、ベンダーサポートはありません。IronPDFは毎月の更新と専用のカスタマーサービスで進化を続けています。

iTextSharp

  • HTMLからPDFへのレンダリング: iTextは、ブラウザではなくCSSレイアウトエンジンである別のpdfHTMLアドオンを通じてHTMLを変換します。レガシーのiTextSharp 5ラインは現在、セキュリティ修正のみを受け取ります。IronPDFは、コアパッケージに埋め込まれたChromiumエンジンでHTMLをレンダリングし、アドオンは必要ありません。
  • 開発者体験: iTextのAPIはPDFオブジェクトとレイアウト要素のレベルで動作し、強力ですが、日常的なタスクにはより多くのコードが必要です。IronPDFは、コーディングを簡素化し、プロジェクトの納期を短縮するクリーンで直感的なC# APIを提供します。
  • メンテナンスとサポート: iTextの無料使用はAGPLの下で行われ、ベンダーサポートは商業ライセンスに限定されており、iTextSharp 5.xはセキュリティ修正を除いてサポート終了です。IronPDFには、プロフェッショナルサポートと毎月の更新がすべてのライセンスに含まれています。

Aspose.PDF

  • 変換品質: Aspose.PDFは、ブラウザではなく独自のレイアウトエンジンでHTMLを変換します。そのドキュメントは、HttpClientでHTMLをストリームにフェッチし、それをHtmlLoadOptionsDocumentに渡すことでWebページを変換しますが、URLから直接レンダリングするわけではありません。以下のr/nflテストでは、出力はほぼ空で、コミュニティロゴ、1つの見出し、いくつかの空のボックスのみでした。IronPDFのChromiumエンジンは、JavaScriptを含むURLを直接レンダリングします。
  • APIの使いやすさ: Aspose.PDFのAPIは冗長になることがありますが、IronPDFは開発者に優しい体験を重視し、セットアップ時間を最小限に抑え、生産性を向上させます。
  • 出力の忠実度: IronPDFはChromiumでレンダリングするため、PDFは同じHTMLに対するChromeの表示と一致し、高ボリュームのPDF生成においてデザインとデバッグが予測可能になります。

Syncfusion PDF

  • APIの複雑さ: Syncfusion PDFは、学習するAPIの範囲が広い有能なライブラリです。対照的に、IronPDFは迅速な統合のためのシンプルなAPIを提供します。
  • レンダリングエンジン: SyncfusionのHTMLコンバーターは現在、Chromium Blinkエンジンを使用しています。以前のWebKitおよびInternet Explorerエンジンは、Essential Studio 2022 Volume 3で廃止されました。以下のr/nflテストでは、Syncfusionの出力はメインフィードを保持しましたが、ナビゲーションとコミュニティパネルは削除されました。一方、IronPDFのChromiumエンジンはページ全体をレンダリングしました。
  • 変換を超えて: IronPDFのパッケージは、デジタル署名、注釈、フォーム入力、バーコードスタンプもカバーしており、同じライブラリでドキュメントワークフローの残りを処理します。

レンダリング比較

これらのライブラリのHTMLからPDFへの変換品質を比較するために、動的コンテンツ、ライブ更新、最新のCSS、およびJavaScriptベースの要素を含むRedditコミュニティページ、r/nflを使用しました。

https://www.reddit.com/r/nfl/

Chromeで表示されたr/nfl Redditページのスクリーンショット

各ライブラリのデフォルト設定での単一の実行からの結果は次のとおりです。SyncfusionとAspose.PDFは評価ビルドとして実行され、そのため出力には評価用の透かしが含まれています(各画像をクリックすると拡大表示されます):

IronPDF

IronPDFによるr/nfl RedditページのHTMLからPDFへの変換出力動的コンテンツと最新のスタイリングを保持した、フォーマットが良く視覚的に正確なPDF。

SyncFusion

Syncfusionによるr/nfl RedditページのHTMLからPDFへの変換出力評価ビルドで変換。メインフィード、投稿コンテンツ、スタイリングは狭い単一カラムレイアウトで通過しましたが、左のナビゲーションと右のコミュニティパネルは削除されました。

Aspose.PDF

Aspose.PDFによるr/nfl RedditページのHTMLからPDFへの変換出力評価ビルド; HTMLを最初にダウンロードする必要がありました(Aspose.PDFはURLではなくストリームからHTMLをロードします)。出力はほぼ空で、コミュニティロゴ、1つの見出し、いくつかの空のボックスのみでした。

Wkhtmltopdf

wkhtmltopdfによるr/nfl RedditページのHTMLからPDFへの変換出力wkhtmltopdfは変換を完了しましたが、結果はページのテキストと画像のみで、レイアウト、スタイリング、動的要素、インタラクティビティはありませんでした。これにより、wkhtmltopdfは現代の動的なWebページには不適です。
ご注意: PDFsharpはHTMLレンダリングエンジンを持たず、iTextは別のpdfHTMLアドオンを通じてのみHTMLを変換するため、どちらもこのブラウザレンダリングテストには含まれていません。

結論

.NET開発者が現代的で信頼性のあるPDFソリューションを求める場合、IronPDFは強力な選択肢です。ChromiumベースのHTMLからPDFへの変換、使いやすさ、定期的な更新、幅広い機能セットにより、トップの選択肢となります。小規模なプロジェクトでも大規模な企業アプリケーションでも、IronPDFは生産性を向上させ、古いまたはサポートされていないライブラリに関連するリスクを回避します。商業アプリケーション向けに設計されたIronPDFは、プロジェクトを維持されサポートされたライブラリに保ちます。

実際の動的なWebページでのテストでは、IronPDFが最も完全で正確なレンダリングを生成しました。Syncfusionはナビゲーションとコミュニティパネルを削除しました。Aspose.PDFは最初にHTMLをダウンロードする必要があり、それでもページのほとんどをレンダリングしませんでした。wkhtmltopdfはページのスタイリングなしでテキストと画像を生成し、現代のサイトには不適です。

現代のHTMLからPDFへのワークフローにおいて、レンダリングの正確さと小さく読みやすいAPIの組み合わせがIronPDFを際立たせます。

動的で重いCSS HTMLを簡単にPDFに変換するIronPDFのフル機能スイートを体験してください。今すぐ無料トライアルでお試しください。


C#でのHTMLからPDFへのチュートリアルビデオを見る

PDFドキュメントを使用して、ChromeでPDFをダウンロードする代わりにブラウザで開くように設定する方法を学ぶために、次のリンクを訪問できます。

最初のステップ:
arrow pointer

よくある質問

C#でIronPDFを使用してHTMLをPDFに変換するにはどうすればよいですか?

IronPDFを使用してHTMLをPDFに変換するには、ChromePdfRendererを初期化し、RenderHtmlAsPdfメソッドを使用してHTMLコンテンツをPDFとしてレンダリングし、その後PDFをファイルに保存する必要があります。

IronPDFのシステム要件は何ですか?

IronPDFは、Windows、macOS、Linux、Docker、Azure、AWS上で.NET 10、.NET 9、.NET 8、.NET 7、.NET 6、.NET 5、.NET Core、.NET Standard、.NET Frameworkをサポートしています。

IronPDFを他のプログラミング言語で使用できますか?

はい、IronPDFは.NETエコシステム内外の複数の言語で使用できます。F#、VB.NET、Python、Java、Node.jsを含みます。

IronPDFを使用してPDFにカスタムヘッダーとフッターを追加するにはどうすればよいですか?

IronPDFを使用すると、TextHeaderFooterクラスを使用してテキストベースのコンテンツを、HtmlHeaderFooterクラスを使用してリッチHTMLコンテンツを追加できます。

IronPDFで既存のURLからPDFをレンダリングすることは可能ですか?

はい、IronPDFのRenderUrlAsPdfメソッドを使用して既存のURLからPDFをレンダリングできます。

IronPDFは高度なCSSとJavaScriptのレンダリングをサポートしていますか?

はい、IronPDFはjQueryやAJAXを含む高度なCSS3とJavaScriptをサポートしており、現代のウェブデザインを正確にレンダリングします。

IronPDFでバッチPDF作成のためにHTMLテンプレートを適用できますか?

はい、C#のテンプレート技術を使用して、String.FormatやHandlebars.NETを含む動的にPDFを生成できます。

IronPDFは他のPDFライブラリとどのように比較されますか?

IronPDFは埋め込みのChromiumエンジンでHTMLをレンダリングし、毎月の更新を提供し、コンパクトなC# APIを持っています。このチュートリアルでは、PdfSharp、wkhtmltopdf、iTextSharp、Aspose.PDF、Syncfusion PDFと比較し、動的なウェブページのサイドバイサイドレンダリングテストを含みます。

IronPDFでPDFに透かしを追加できますか?

はい、IronPDFを使用すると、PDFドキュメントにテキストまたは画像の透かしを追加できます。

IronPDFの試用版はありますか?

はい、ライセンスを購入する前にIronPDFの機能をテストするための30日間の無料試用キーにサインアップできます。

Jacob Mellor、Ironチームの最高技術責任者(CTO)
最高技術責任者(CTO)

ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。

準備はできましたか?

Nuget Downloads 21,105,021バージョン:2026.9リリースされたばかり

無料をゲット

30日間の試用キーをすぐに取得。

bullet_checkedクレジットカードやアカウントの作成は不要です。
bullet_test製品版でのテスト
透かしなし
bullet_calendar30日間
完全機能の製品
bullet_support試用期間中の
24/5テクニカルサポート
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

OR
bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から