フッターコンテンツにスキップ
製品比較

HTMLをPDFに変換するための最良のC#ライブラリは何ですか?

Web コンテンツをプロフェッショナルな PDF ドキュメントに変換することは、.NET 開発者に共通する要件です。 請求書の生成、Web ページ全体のアーカイブ、HTML コンテンツからの動的ドキュメントの作成など、適切なHTML から PDF へのコンバーターを選択することで、時間を節約し、一貫性を向上させ、PDF 作成ワークフローを強化できます。

この記事では、PDF 変換機能、レンダリングエンジン、統合オプションに焦点を当てて、HTML を PDF に変換する 5 つの人気ツールを比較します。 また、.NET Core および .NET Framework を使用して、HTML コンテンツや Web ページ全体を生成された PDF ドキュメントに直接変換する方法を示します。

1. IronPDF: シームレスな HTML から C# への PDF

IronPDF ホームページ

IronPDF is a modern .NET library that makes HTML を PDF に変換するドキュメントをシンプルで強力なものにする、最新の .NET ライブラリです。 大規模な PDF 生成をサポートし、複雑な HTML フォーム、CSS サポート、動的 Web コンテンツをわずか数行のコードで処理できます。

IronPDF は、エンタープライズ対応のソリューションが必要な .NET 開発者向けに設計されており、HTML 文字列、HTML ファイル、または Web ページを簡単にプロフェッショナルな PDF に変換できます。 請求書の生成、レポートの生成、Web コンテンツのアーカイブなど、IronPDF は .NET Core、.NET Framework、Visual Studio、および Azure App Services 全体で機能する堅牢な API を提供します。

主な機能:

  • HTML ファイル、文字列、またはWeb ページを PDF ファイルに変換します。

    • PDF ページ サイズ、テキストまたは HTML ヘッダー、フッター、および改ページをカスタマイズします。
  • 強力なPDF 編集ツール セットで PDF ドキュメントを操作するのに最適です。

  • Support for PDF forms, PDF encryption, and archiving web content.

  • Visual Studio、Azure App Services、および .NET Core で動作します。

  • 独自のテンプレートと動的コンテンツ生成を備えたシンプルな API 統合。

例: HTML 文字列を PDF に変換

using IronPdf;

class Program
{
    public static void Main()
    {
        var renderer = new ChromePdfRenderer();
    string htmlString = "<h1>Hello, IronPDF!</h1><p>Generate PDF from HTML content.</p>";
    var pdf = renderer.RenderHtmlAsPdf(htmlString);
    pdf.SaveAs("GeneratedDocument.pdf");    }
}
using IronPdf;

class Program
{
    public static void Main()
    {
        var renderer = new ChromePdfRenderer();
    string htmlString = "<h1>Hello, IronPDF!</h1><p>Generate PDF from HTML content.</p>";
    var pdf = renderer.RenderHtmlAsPdf(htmlString);
    pdf.SaveAs("GeneratedDocument.pdf");    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、HTML 文字列を PDF ドキュメントに変換する方法を示しています。 ユーザー入力またはデータベースデータから請求書やレポートを生成するなど、動的コンテンツには最適で、わずか数行のコードで実現できます。

出力

IronPDF を使用した HTML から PDF への変換

例 2: カスタム設定で Web ページを変換

using IronPdf;

class Program
{
    public static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginBottom = 15;
        renderer.RenderingOptions.WaitFor.RenderDelay(3000);

        var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
        pdf.SaveAs("WebPageDocument.pdf");

    }
}
using IronPdf;

class Program
{
    public static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.MarginTop = 15;
        renderer.RenderingOptions.MarginBottom = 15;
        renderer.RenderingOptions.WaitFor.RenderDelay(3000);

        var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
        pdf.SaveAs("WebPageDocument.pdf");

    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例では、ページサイズと余白をカスタマイズしながら、Web ページ全体を PDF に変換する方法を示します。 Web コンテンツのアーカイブや、既存の URL からの PDF 生成に便利です。

出力

IronPDF を使用した URL から PDF への変換

評価: IronPDF は、堅牢な PDF 変換機能、動的ドキュメントサポート、および PDF 作成の完全な制御が必要な .NET 開発者に最適です。 HTML ドキュメント、文字列、Web ページを簡単に処理し、Visual Studio、.NET Core、および Azure App Services で正常に動作します。

2. DinkToPdf – 軽量のオープンソースコンバータ

DinkToPdf

DinkToPdf は、広く使用されているオープンソースの HTML から PDF へのコンバータ wkhtmltopdf の .NET ラッパーです。 HTML ページ、文字列、Web ページを PDF に変換するための軽量でシンプルなソリューションが必要な開発者に最適です。

PDF フォームや暗号化などの高度なエンタープライズ機能は提供されていませんが、高速で、統合が容易で、印刷用 CSS、ページ分割、基本的な Web ページのレンダリングをサポートしています。 DinkToPdf は、シンプルさと速度が重要視される内部ツール、レポート、またはプロジェクトに最適な選択肢です。

主な機能:

  • HTML 文字列、HTML ファイル、または Web ページを PDF に変換します。

  • 要素内または要素後のページ分割をサポートし、印刷用 CSS をサポートします。

    • .NET Core および .NET Framework で動作します。

例 1: ページ分割を使用した HTML から PDF への変換

using System.IO;
using DinkToPdf;
using DinkToPdf.Contracts;

var doc = new HtmlToPdfDocument()
{
    GlobalSettings = { PaperSize = PaperKind.A4 },
    Objects =
    {
        new ObjectSettings
        {
            HtmlContent = "<h1>Report</h1><div style='page-break-after: always;'>Page 1</div><div>Page 2</div>"
        }
    }
};

var converter = new BasicConverter(new PdfTools());
byte[] pdfBytes = converter.Convert(doc);

// Save PDF to file
File.WriteAllBytes("Report.pdf", pdfBytes);
using System.IO;
using DinkToPdf;
using DinkToPdf.Contracts;

var doc = new HtmlToPdfDocument()
{
    GlobalSettings = { PaperSize = PaperKind.A4 },
    Objects =
    {
        new ObjectSettings
        {
            HtmlContent = "<h1>Report</h1><div style='page-break-after: always;'>Page 1</div><div>Page 2</div>"
        }
    }
};

var converter = new BasicConverter(new PdfTools());
byte[] pdfBytes = converter.Convert(doc);

// Save PDF to file
File.WriteAllBytes("Report.pdf", pdfBytes);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これにより、HTML 文字列が PDF に変換され、手動でページ分割が追加されます。 レポートや、コンテンツがページ境界を尊重する必要があるマルチページのドキュメントに最適です。

出力

DinkToPdf を使用した HTML から PDF への変換

例 2: Web ページを直接変換

using System.IO;
using DinkToPdf;
using DinkToPdf.Contracts;

var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings { Page = "https://en.wikipedia.org/wiki/Main_Page" } }
};
var converter = new BasicConverter(new PdfTools());
converter.Convert(doc);

byte[] pdfBytes = converter.Convert(doc);

// Save PDF to file
File.WriteAllBytes("output.pdf", pdfBytes);
using System.IO;
using DinkToPdf;
using DinkToPdf.Contracts;

var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings { Page = "https://en.wikipedia.org/wiki/Main_Page" } }
};
var converter = new BasicConverter(new PdfTools());
converter.Convert(doc);

byte[] pdfBytes = converter.Convert(doc);

// Save PDF to file
File.WriteAllBytes("output.pdf", pdfBytes);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコードは、Web ページ全体を PDF に変換します。 商用ライセンスなしで、Web サイトをアーカイブしたり、URL から PDF を生成したりしたい開発者向けの軽量ソリューションです。

出力

DinkToPdf を使用した URL から PDF への変換

評価: DinkToPdf は、小規模プロジェクトや高速に HTML を PDF に変換する必要がある内部ツールに最適ですが、高度な PDF フォームや暗号化のサポートがない。

3. PuppeteerSharp – ヘッドレス Chrome PDF 生成

PuppeteerSharp

PuppeteerSharp は、HTML コンテンツをブラウザと同様に正確にレンダリングするヘッドレス Chrome を制御する .NET ライブラリです。 動的ドキュメントや複雑な CSS や JavaScript を含むページに最適です。 PuppeteerSharp は、HTML 文字列、ファイル、URL をプロフェッショナルな PDF に変換しながら、意図したレイアウト、フォント、スタイルを維持します。 インタラクティブなダッシュボード、オンライン レポート、または Web ページ全体のアーカイブに最適です。

主な機能:

  • フル CSS および JavaScript サポート。

    • 動的ドキュメントと Web ページ全体を変換できます。

    • .NET Core で動作し、Azure App Services で実行できます。

例 1: HTML 文字列を PDF に変換

using PuppeteerSharp;
using PuppeteerSharp.Media;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // Specify path to a manually installed Chromium or Chrome
        var chromePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe";
        // Linux example: "/usr/bin/google-chrome"

        if (!System.IO.File.Exists(chromePath))
        {
            Console.WriteLine("Chrome/Chromium executable not found. Please download it manually.");
            return;
        }

        // Launch browser using local executable
        await using var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            Headless = true,
            ExecutablePath = chromePath,
            Args = new[] { "--no-sandbox" }
        });

        // Open a new page
        await using var page = await browser.NewPageAsync();

        // Set HTML content
        string htmlContent = "<h1>Dynamic Report</h1><p>Generated from HTML string</p>";
        await page.SetContentAsync(htmlContent);

        // Optional: ensure print CSS is applied
        await page.EmulateMediaTypeAsync(PuppeteerSharp.Media.MediaType.Screen);

        // Save PDF
        await page.PdfAsync("html-string-to-pdf.pdf", new PdfOptions
        {
            Format = PaperFormat.A4,
            PrintBackground = true
        });

        Console.WriteLine("PDF generated successfully!");
    }
}
using PuppeteerSharp;
using PuppeteerSharp.Media;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // Specify path to a manually installed Chromium or Chrome
        var chromePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe";
        // Linux example: "/usr/bin/google-chrome"

        if (!System.IO.File.Exists(chromePath))
        {
            Console.WriteLine("Chrome/Chromium executable not found. Please download it manually.");
            return;
        }

        // Launch browser using local executable
        await using var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            Headless = true,
            ExecutablePath = chromePath,
            Args = new[] { "--no-sandbox" }
        });

        // Open a new page
        await using var page = await browser.NewPageAsync();

        // Set HTML content
        string htmlContent = "<h1>Dynamic Report</h1><p>Generated from HTML string</p>";
        await page.SetContentAsync(htmlContent);

        // Optional: ensure print CSS is applied
        await page.EmulateMediaTypeAsync(PuppeteerSharp.Media.MediaType.Screen);

        // Save PDF
        await page.PdfAsync("html-string-to-pdf.pdf", new PdfOptions
        {
            Format = PaperFormat.A4,
            PrintBackground = true
        });

        Console.WriteLine("PDF generated successfully!");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これにより、動的 HTML コンテンツが PDF に変換されます。 PuppeteerSharp は HTML 内の JavaScript を実行するため、インタラクティブなダッシュボードやアニメーションを含むページに最適です。

出力

PuppeteerSharp を使用した HTML から PDF への変換

例 2: カスタム ヘッダー付きの Web ページを変換

using PuppeteerSharp;
using PuppeteerSharp.Media;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // Specify path to a manually installed Chromium or Chrome
        var chromePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe";
        // Linux example: "/usr/bin/google-chrome"

        if (!System.IO.File.Exists(chromePath))
        {
            Console.WriteLine("Chrome/Chromium executable not found. Please download it manually.");
            return;
        }

        // Launch browser using local executable
        await using var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            Headless = true,
            ExecutablePath = chromePath,
            Args = new[] { "--no-sandbox" }
        });

        // Open a new page
        await using var page = await browser.NewPageAsync();
        await page.GoToAsync("https://en.wikipedia.org/wiki/Main_Page");

        // Save PDF
        await page.PdfAsync("WebPage.pdf", new PdfOptions
        {
            MarginOptions = new MarginOptions { Top = "50px", Bottom = "50px" }
        });

        Console.WriteLine("PDF generated successfully!");
    }
}
using PuppeteerSharp;
using PuppeteerSharp.Media;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // Specify path to a manually installed Chromium or Chrome
        var chromePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe";
        // Linux example: "/usr/bin/google-chrome"

        if (!System.IO.File.Exists(chromePath))
        {
            Console.WriteLine("Chrome/Chromium executable not found. Please download it manually.");
            return;
        }

        // Launch browser using local executable
        await using var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            Headless = true,
            ExecutablePath = chromePath,
            Args = new[] { "--no-sandbox" }
        });

        // Open a new page
        await using var page = await browser.NewPageAsync();
        await page.GoToAsync("https://en.wikipedia.org/wiki/Main_Page");

        // Save PDF
        await page.PdfAsync("WebPage.pdf", new PdfOptions
        {
            MarginOptions = new MarginOptions { Top = "50px", Bottom = "50px" }
        });

        Console.WriteLine("PDF generated successfully!");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコードは、ヘッドレスの Chrome/Chromium ブラウザを起動し、Web ページに移動し、PuppeteerSharp を使用して PDF として保存し、自動的な Chromium ダウンロードを回避します。

出力

PuppeteerSharp を使用した URL から PDF への変換

評価: PuppeteerSharp は、動的な Web ページ (JavaScript および複雑な CSS を含む) のピクセルレベルの正確なレンダリングが必要な場合に最適ですが、単純な静的 HTML から PDF へのタスクには過剰である可能性があります。

4. SelectPdf – 商業用 HTML から PDF への変換

SelectPdf

SelectPdf は、エンタープライズレベルの機能を備えた高忠実度 HTML から PDF への変換が必要な開発者向けに設計された商業用 .NET ライブラリです。 CSS スタイリング、画像、ページレイアウトを保持しながら、HTML コンテンツ、HTML ファイル、または Web ページ全体をプロフェッショナルな PDF ドキュメントに変換できます。

SelectPdf は、PDF フォーム、PDF 暗号化、ヘッダー、フッター、ページ分割のサポートを提供するため、エンタープライズ アプリケーション、Web レポート ソリューション、動的ドキュメント生成に特に適しています。 既存のプロジェクトへの統合が簡単になる .NET Core、.NET Framework、および Visual Studio でシームレスに動作します。

主な機能:

  • HTML コンテンツ、HTML ファイル、または URL を PDF ファイルに変換します。

    • CSS、ページ分割、ヘッダー/フッター、余白をサポートします。
  • セキュアまたはインタラクティブなドキュメント用の PDF 暗号化および PDF フォームを提供します。

  • テクニカルサポート付きの商用ライセンス。

例 1: インライン HTML コンテンツを変換

var converter = new SelectPdf.HtmlToPdf();
string htmlContent = "<h1>Monthly Report</h1><p>This PDF is generated from inline HTML content.</p>";
var doc = converter.ConvertHtmlString(htmlContent);
doc.Save("InlineHtmlReport.pdf");
var converter = new SelectPdf.HtmlToPdf();
string htmlContent = "<h1>Monthly Report</h1><p>This PDF is generated from inline HTML content.</p>";
var doc = converter.ConvertHtmlString(htmlContent);
doc.Save("InlineHtmlReport.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、インライン HTML コンテンツを PDF に変換する方法を示しています。 あなたのアプリケーションで生成された動的コンテンツ (ユーザー レポートやリアルタイム ダッシュボードなど) に最適で、意図したレイアウトとフォーマットをそのまま維持します。

出力

SelectPdf を使用した HTML から PDF への変換

例 2: カスタム ヘッダー付きの Web ページを変換

using SelectPdf;

var converter = new SelectPdf.HtmlToPdf();
converter.Options.DisplayHeader = true;
converter.Options.DisplayFooter = true;

var doc = converter.ConvertUrl("https://en.wikipedia.org/wiki/Main_Page");
doc.Save("WebPageWithHeader.pdf");
using SelectPdf;

var converter = new SelectPdf.HtmlToPdf();
converter.Options.DisplayHeader = true;
converter.Options.DisplayFooter = true;

var doc = converter.ConvertUrl("https://en.wikipedia.org/wiki/Main_Page");
doc.Save("WebPageWithHeader.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例では、ライブ Web ページを PDF に変換し、カスタム ヘッダーとフッターを追加します。 Web コンテンツのアーカイブ、プロフェッショナルなレポートの生成、またはクライアント向けのブランド化された PDF ドキュメントの作成に最適です。

出力

SelectPdf を使用した URL から PDF への変換

評価: SelectPdf は、高忠実度 PDF 生成、堅牢なエンタープライズ機能、および信頼性の高いサポートが必要な商業アプリケーションに最適です。 ヘッダー、フッター、暗号化、PDF フォームが重要な場合、動的または大規模な PDF 作成に最適な選択です。

5. EvoPdf: .NET HTML から PDF へのコンバータ

EvoPdf

EvoPdf は、PDF 作成を完全に制御する必要がある開発者向けに設計された高度な HTML から PDF への変換機能を提供する商業用 .NET ライブラリです。 HTML 文字列、HTML ファイル、および URL を PDF に変換でき、複雑な CSS、ページ分割、ヘッダー/フッター、PDF フォーム、および暗号化をサポートします。

EvoPdf は、エンタープライズ アプリケーション、Web レポート、および大規模な PDF 生成に最適で、.NET Core、.NET Framework、および Visual Studio と連携します。 その非同期 PDF 生成機能により、非ブロッキング実行が重要な Web API や大規模アプリケーションに理想的です。

主な機能:

  • HTML 文字列、ファイル、および URL をプロフェッショナルな PDF ファイルに変換します。

    • 印刷用 CSS、ページ分割、ヘッダー/フッター、拡張スタイルをサポートします。

    • PDF 暗号化およびインタラクティブな PDF フォームを提供します。

    • .NET Core、.NET Framework、および Visual Studio と互換性があります。

例 1: HTML 文字列を変換

using EvoPdf;

var htmlToPdf = new EvoPdf.HtmlToPdfConverter();

// Inline HTML content
string htmlContent = "<h1>Regular PDF</h1><p>This PDF is generated from a simple HTML string.</p>";

// Convert returns a byte array
byte[] pdfBytes = htmlToPdf.ConvertHtml(htmlContent, string.Empty);

// Save to a file
File.WriteAllBytes("HtmlStringDocument.pdf", pdfBytes);
using EvoPdf;

var htmlToPdf = new EvoPdf.HtmlToPdfConverter();

// Inline HTML content
string htmlContent = "<h1>Regular PDF</h1><p>This PDF is generated from a simple HTML string.</p>";

// Convert returns a byte array
byte[] pdfBytes = htmlToPdf.ConvertHtml(htmlContent, string.Empty);

// Save to a file
File.WriteAllBytes("HtmlStringDocument.pdf", pdfBytes);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例では、通常の HTML 文字列を PDF に変換してディスクに保存します。 EvoPdf は結果をバイト列型として返すため、ファイルを書き込んだり、オンザフライで PDF を生成するために API エンドポイントから返したりするのが簡単です。

出力

EvoPdf を使用した HTML から PDF への変換

例 2: URL を PDF に変換

using EvoPdf;
using System.IO;

var htmlToPdf = new HtmlToPdfConverter();

// Convert a live webpage directly to PDF
byte[] pdfBytes = htmlToPdf.ConvertUrl("https://en.wikipedia.org/wiki/Main_Page");

// Save PDF to file
File.WriteAllBytes("WebPageEvoPdf.pdf", pdfBytes);
using EvoPdf;
using System.IO;

var htmlToPdf = new HtmlToPdfConverter();

// Convert a live webpage directly to PDF
byte[] pdfBytes = htmlToPdf.ConvertUrl("https://en.wikipedia.org/wiki/Main_Page");

// Save PDF to file
File.WriteAllBytes("WebPageEvoPdf.pdf", pdfBytes);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、URL を渡して結果として得られる PDF を保存するという、最もシンプルな EvoPdf の使い方を示しています。 Web ページをすばやくアーカイブしたり、動的コンテンツの静的コピーを生成したり、HTML を前処理することなく既存の URL から PDF を作成したりするのに最適です。

出力

EvoPdf を使用した URL から PDF への変換

評価: EvoPdf は、高度な PDF 機能を備えた商業用の .NET ライブラリで、ページ分割、ヘッダー/フッター、Web コンテンツのアーカイブなどが必要な開発者に最適です。 PDF をバイト列型として出力するため、API 駆動型ワークフロー、データベース ストレージ、エンタープライズ環境での大規模 PDF 生成に特に適しています。

PDF ライブラリ比較表

機能 / ライブラリ IronPDF DinkToPdf (wkhtmltopdf) PuppeteerSharp SelectPdf EvoPdf
主な焦点 HTML → PDF と強力な .NET 統合 軽量な wkhtmltopdf ラッパーによる簡単な変換 ピクセル完璧な PDF 用のヘッドレス Chrome レンダリング エンタープライズ機能を備えた商業用 HTML → .NET への PDF エンタープライズグレードの HTML → PDF、API 向けのバイト列出力
HTML サポート フル HTML5、CSS、JS サポート 良好な HTML/CSS サポート、制限された古い JS サポート フル HTML/CSS と最新の JavaScript サポート フル HTML & CSS; 限定的な JavaScript フル HTML/CSS; 限定的な JS (バージョン/エンジンによる)
変換タイプ HTML 文字列、ファイル、URL、Razor/ビュー、Web ページ HTML 文字列、ファイル、URL HTML 文字列、ファイル、URL、動的ページ (JS 実行) HTML 文字列、ファイル、URL HTML 文字列、ファイル、URL
追加の PDF 機能 フォーム、暗号化、デジタル署名、透かし、マージ/スプリット 基本 (ページ分割、印刷用 CSS); 組み込みのフォーム/暗号化なし 組み込みの PDF フォーム/暗号化なし (レンダリングに焦点) ヘッダー/フッター、目次、ブックマーク、フォーム、暗号化 ブックマーク、ヘッダー/フッター、フォーム、暗号化; バイト列型を返す
出力タイプ PDF ドキュメント オブジェクト / SaveAs PDF ファイル (コンバーター経由) PDF ファイル / ストリーム PDF ドキュメント オブジェクト / SaveAs バイト列型 (File.WriteAllBytes を使用して書き込み)
デプロイメント / プラットフォーム Windows、Linux、macOS、Docker、Azure、AWS Windows、Linux (バイナリ依存)、Docker Windows、Linux、macOS、Docker、Azure (Chromium) 主に Windows; .NET サポート (配布物を確認) 主に Windows (配布物を確認); .NET 互換
使いやすさ 非常にシンプルな API、初心者向き シンプルだが、ネイティブ wkhtmltopdf バイナリが必要 中程度 — Chromium/BrowserFetcher が必要; だが強力 中程度 — シンプルな API、商用サポート 中程度 — 強力だが、バイト列型パターンが他とは異なる
NuGet パッケージ
ライセンス 商用 (無料体験版) オープンソース (wkhtmltopdf) オープンソース 商用 (無料体験版) 商用 (無料体験版)
最適な用途 堅牢な PDF 生成が必要なエンタープライズ .NET アプリ 軽量/内部ツールで高速変換が必要 JS 重いページのピクセル完璧なレンダリング フォーム/暗号化とサポートが必要な商用アプリ API 駆動型アプリ、アーカイブ、大規模生成 (バイト列型ワークフロー)

結論

C# の HTML から PDF への変換に関して、適切なツールはプロジェクトの規模、必要な PDF 機能、および生成された PDF がライブブラウザレンダリングにどれだけ近づく必要があるかによって異なります。

  • IronPDF: .NET 開発者向けのオールラウンドでエンタープライズ対応の最適なソリューション。 HTML 文字列、ファイル、URL、Razor ビュー、フォーム、暗号化、大規模 PDF 生成をサポートしています。 シンプルな API と高度な機能、多プラットフォーム展開が必要な場合、自分のトップピックは IronPDF です。

  • DinkToPdf (wkhtmltopdf): 内部ツールや小規模プロジェクト向けの無料/ライトなオプション。 HTML コード/ファイル/URL 変換が高速かつシンプルで、印刷用 CSS とページ分割のサポートがありますが、組み込みのフォームや暗号化機能がなく、wkhtmltopdf バイナリに依存しています。

  • PuppeteerSharp: JavaScript 重いページのピクセル完璧なレンダリングが必要な場合に使用します。 ヘッドレス Chromium を実行し、最新の Web ページを忠実にレンダリングするため、ダッシュボード、インタラクティブなページ、または印刷前に JS に依存する HTML に最適です。

  • SelectPdf: ヘッダー/フッター、目次、フォーム、暗号化などのエンタープライズ機能を備えた高忠実度変換が必要なプロジェクトに最適な商業用オプション — 商用サポートがあり、運用環境でもコンプライアンスを向上します。

  • EvoPdf: ライブラリがバイト列型を返すことが便利な (ストリーミング応答、DB ストレージ、またはマイクロサービス用) API ファーストまたは大規模ワークフローに適しています。 高度な PDF 機能を提供し、エンタープライズ アーカイブおよび自動化に最適です。

最終勧告: 機能の幅広さ、使いやすさ、プラットフォームの柔軟性が重要なほとんどの制作において、IronPDF は最もバランスの取れたソリューションを提供します。 ピクセル完璧な JS 重いレンダリングの場合、PuppeteerSharp を選択します。 軽量でコストがかからないニーズの場合、DinkToPdf を選択します。 商業用サポート、フォーム/暗号化、または特定の API 駆動型ワークフローが必要な場合は、SelectPdf または EvoPdf を選択します。

IronPDF を無料でお試しください

C# でシームレスなHTML から PDF への変換を体験する準備はできましたか? IronPDF を使用すると、わずか数行のコードで HTML 文字列、ファイル、ライブ Web ページをプロフェッショナルな PDF ドキュメントに簡単に変換できます。

👉 Try the free trial for IronPDF and start generating PDFs in your .NET applications today.

よくある質問

HTML to PDFコンバータを使用する利点は何ですか?

HTML to PDFコンバータの使用は時間を節約し、ドキュメントの一貫性を向上させ、全体的なPDF生成ワークフローを強化することができます。特に.NET開発者が請求書を生成したりウェブページをアーカイブしたりする際に役立ちます。

IronPDFは他のHTML to PDFコンバータと比較してどうですか?

IronPDFは、HTMLコンテンツをCSSやJavaScriptと一緒に高品質なPDF文書に変換する機能を備えた.NET開発者向けの堅牢な機能セットを提供します。その使いやすさと包括的なサポートで知られています。

IronPDFは複雑なHTMLコンテンツを処理できますか?

はい、IronPDFはCSSやJavaScriptを含む複雑なHTMLコンテンツをプロフェッショナルグレードのPDFドキュメントに正確に変換し、すべての要素が確実に正確に表現されるようにします。

なぜ無料のコンバータよりも有料のコンバータを選ぶべきですか?

IronPDFのような有料コンバータは、より高度な機能、信頼性のあるサポート、頻繁なアップデートを提供し、無料のコンバータが欠けている可能性のある高品質な出力と効率性を保証します。

IronPDFは動的ドキュメントの生成に適していますか?

もちろんです。IronPDFは動的HTMLコンテンツを処理するように設計されており、さまざまなデータソースから動的ドキュメントを生成するのに理想的です。

IronPDFは.NET Coreアプリケーションをサポートしていますか?

はい、IronPDFは.NET Coreアプリケーションと互換性があり、さまざまな.NET環境間での柔軟性と互換性を提供します。

IronPDFユーザーにはどのようなサポートが提供されますか?

IronPDFは、詳細なドキュメント、チュートリアル、専用のカスタマーサービスを含む包括的なサポートを提供し、開発者がPDF生成の目標を達成するのを支援します。

IronPDFの使用はどのようにPDF生成ワークフローを強化しますか?

IronPDFは.NETアプリケーションとのシームレスな統合を提供し、開発者が効率的かつ正確にHTMLをPDFに変換できるようにすることで、PDF生成ワークフローを合理化します。

Curtis Chau
テクニカルライター

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

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