IRONPDFの使用

C#でPDFを作成する(コード例チュートリアル)

PDFドキュメントの生成は、請求書の作成、詳細なレポートの作成、ウェブコンテンツのアーカイブ、または安全な文書共有を保証するために、現代のC# .NET開発において一般的で重要な要件です。 開発者はしばしば、.NETアプリケーションでPDFを生成するためのさまざまな方法を模索します。有名なライブラリであるiTextSharp(現在はiText 7)、PdfSharp、QuestPDFの使用、あるいは単純なタスクに対しては.NETの内蔵機能を活用することも含まれます。 一部の人々は、サードパーティのクラウドベースAPIやwkhtmltopdfのようなコマンドラインツールの統合を検討することもあります。

これらの多様なオプションが存在する中で、使いやすさ、包括的な機能、高度なレンダリング能力、そして堅牢なパフォーマンスを完璧にバランスさせるC# PDFライブラリを見つけることが、効率的な開発のための鍵となります。 これはまさにIronPDFがその違いを示すところであり、C#開発者のために特別に設計された強力でありながら非常に直感的なソリューションを提供します。 このチュートリアルでは、IronPDFを使用してC# .NETでPDFドキュメントを作成するシンプルなプロセスをガイドします。基本的なHTML文字列の変換から複雑なウェブページのレンダリングまでを網羅しています。 PDFファイルを効率的に作成したい場合は、ここが最適な場所です。

IronPDFはJava向けのフル機能を備えたPDFライブラリです。 これは、PDFドキュメントの作成、編集、処理、および他のファイルタイプ(HTML、PNG、RTFなど)のコンテンツから編集可能なPDFファイルを出力するのに効率的に動作する、利用可能なサードパーティライブラリの1つです。 IronPDFや類似のPDFライブラリについてさらに詳しくは、増え続けるサードパーティライブラリ比較記事のカタログをご覧ください。

C#PDFライブラリの選択: 無料オプション vs. 商用オプション

C#でPDF生成を必要とするプロジェクトに着手する際、開発者はしばしば無料ライブラリと商用ライブラリの利点と欠点を比較検討します。 PDFSharpやQuestPDFのような無料のライブラリは、基本的なPDF作成や予算が限られた場合の優れた出発点となることがあります。 しかし、それらは、機能セットに関する制限、高度な機能の実装に伴う複雑さ(例えば、ピクセルパーフェクトなHTMLからPDFへのレンダリング)、または専用のプロフェッショナルサポートの即時利用可能性に関して制限を示すことがあります。

IronPDFなどの商用ライブラリは、プロダクション環境ではライセンスが必要ですが、通常、より効率的でスムーズな開発体験を提供します。 それらはしばしば、非常に正確なHTML、CSS、およびJavaScriptからPDFへのレンダリング、包括的な文書セキュリティオプション、そして強力なPDF操作ツールを含む、豊富な機能を誇ります。 さらに、通常は専門的なサポートと定期的な更新の保証が付いてきます。 IronPDFは開発者に優しいアプローチを支持しています。 これはプロフェッショナル向けに設計された商業ライブラリですが、開発とテストのための完全に無料のライセンスと、本番評価のための試用期間を提供しています。 これにより、PDFドキュメントを高度な機能で作成するプロジェクトに最適かどうかを判断する前に、その機能を十分に探索することができます。

Get started creating PDFs now!

IronPdf.ChromePdfRenderer
       .StaticRenderHtmlAsPdf("<p>Hello Word</p>")
       .SaveAs("pixelperfect.pdf");
NuGetでインストール
green arrow pointer

PM >  Install-Package IronPdf

HTMLはマークアップ言語であるため、HTMLタグなしでHTMLの内容をPDFに変換するのは難しいことがあります。 IronPDFは、JavaScript、CSS、画像の使用などの追加機能に加えて、使いやすさのために、HTMLからC#でPDFを作成するといった機能を提供します。

この記事では、IronPDFによって提供されるC#でのHTMLからPDFへの変換について詳しく説明します。

チュートリアル動画を見る


C#アプリケーションでのPDF生成の一般的なシナリオ

コードに取り掛かる前に、なぜC#でPDFを作成する必要があるのかを考えてみましょう。

  • 請求書と領収書の作成: プログラムによって C# で PDF 請求書を作成します。 IronPDFは、プロフェッショナルなレイアウトのためにHTMLテンプレートを簡単に使用できます。
  • 動的なレポートの作成: C#アプリケーションがデータを使用して複雑なPDFレポートを生成する必要がある場合、IronPDFのHTMLからPDFへのレンダリングは、豊富なスタイルや動的なコンテンツを可能にします。
  • ウェブコンテンツのアーカイブ: IronPDF の正確な URL および HTML レンダリングを使用して、動的なウェブページや HTML コンテンツを標準化された PDF フォーマットに変換し、信頼性のある長期保存やコンプライアンスを実現します。
  • 安全なドキュメント共有: IronPDFで利用できる、パスワード保護、暗号化、および特定のユーザー権限を備えたPDFを作成します。
  • チケット、バウチャー、または証明書の生成: ユニークで動的に生成されたコンテンツを含む印刷可能なドキュメントを作成します。 IronPDFのHTMLをPDFに変換する機能は、このようなドキュメントのテンプレート化に最適です。

    IronPDFは、これらの使用例およびその他に対して効果的なソリューションを提供します。

Visual Studioで新しいプロジェクトを作成

Visual Studioソフトウェアを開き、[ファイル]メニューに移動します。 新しいプロジェクトを選択し、次にコンソールアプリケーションを選択します。 この記事では、コンソールアプリケーションを使用してPDFドキュメントを生成します。

C# PDFの作成 (コード例チュートリアル)、図01: Visual Studioで新しいプロジェクトを作成する

Visual Studioで新しいプロジェクトを作成する

プロジェクト名を入力し、適切なテキストボックスにパスを選択してください。 次に、「次へ」ボタンをクリックします。

C# で PDF を作成する(コード例チュートリアル)、図02: このプロジェクトを設定

このプロジェクトを構成する

必要な.NET Frameworkを選択し、次に以下に示すように[Create]ボタンをクリックしてください。

C# PDF 作成(コード例チュートリアル)、図03: .NET Framework の選択

.NET Frameworkの選択

Visual Studioプロジェクトは、選択したアプリケーションの構造を生成します。コンソール、Windows、Webアプリケーションを選択した場合は、コードを入力してアプリケーションをビルド/実行するためのprogram.csファイルが開きます。

次のステップは、ライブラリを追加し、プログラムをテストすることです。

Visual Studio NuGet パッケージ マネージャーを使用する

Visual Studioソフトウェアは、ソリューションにパッケージを直接インストールするためのNuGetパッケージマネージャーオプションを提供します。 以下のスクリーンショットは、NuGetパッケージマネージャーの開き方を示しています。

先述の通り、IronPDFは開発とテストのための無料ライセンスを提供しています。

C# PDF 作成(コード例チュートリアル)、図 04: NuGet パッケージ マネージャーに移動します

NuGet パッケージ マネージャーに移動

NuGetウェブサイトから利用可能なパッケージライブラリのリストを表示する検索ボックスを提供します。下のスクリーンショットのように、パッケージマネージャーでキーワード "IronPDF "を検索してください:

C# PDFを作成 (コード例チュートリアル)、図05: NuGetパッケージマネージャーからIronPdfパッケージをインストール

NuGet パッケージ マネージャーから IronPdf パッケージをインストールする

上記の画像から、関連するNuGetパッケージのリストからIronPDFオプションを選択し、ソリューションにパッケージをインストールします。

Visual Studio コマンド ラインの使用

NuGet NuGetでインストール

PM >  Install-Package IronPdf

IronPDFNuGetでチェックして、すばやくインストールしましょう。1,000万以上のダウンロードを記録しており、C#によるPDF開発を革新しています。 また、DLLまたはWindows インストーラーをダウンロードすることもできます。

Visual Studio メニューで、ツール > NuGet パッケージ マネージャー > パッケージ マネージャー コンソールに移動します

C# PDF 作成(コード例チュートリアル)、図06: パッケージ マネージャー コンソールに移動

パッケージマネージャーコンソールに移動する

パッケージマネージャーコンソールタブに次の行を入力してください:

Install-Package IronPdf
Install-Package IronPdf
SHELL

2. RenderHtmlAsPdf()を使用してHTMLからPDFを作成します

IronPDFがインストールされている場合、最も基本的なタスクの1つは、HTML文字列からC#でPDFを作成することです。 これは、アプリケーション内で直接動的なPDFコンテンツを生成するのに非常に便利です。 これには IronPDF の RenderHtmlAsPdf() メソッドを使用できます。 このアプローチは、シンプルな通知、確認、または小さな動的に生成されたスニペットのようなもののために、迅速にPDFを作成する必要がある場合に最適です。

using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
PdfDocument doc = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
PdfDocument doc = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New ChromePdfRenderer()
Dim doc As PdfDocument = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>")
doc.SaveAs("FirstPDFDocument.pdf")
$vbLabelText   $csharpLabel

このスニペットでは、まずChromePdfRendererをインスタンス化します。 次に、基本的なHTML文字列を使用してRenderHtmlAsPdf()を呼び出します。 最後に、doc.SaveAs() は生成されたPDFを 'FirstPDFDocument.pdf' に保存します。 このファイルには表示されたH1タグが含まれます。 C#プロジェクトの実行後、プロジェクトのbinフォルダに「FirstPDFDocument.pdf」という名前のファイルが作成されますので、このファイルをダブルクリックしてください。 IronPDF を使用すると、C# で PDF ファイルを作成したり、HTML を PDF に変換して PDF ファイルを作成するのは、ほんの数行のコードで済みます。

3. URLからPDFドキュメントを作成

既存のウェブページから C# で PDF を作成することが目的であれば、IronPDF の RenderUrlAsPdf() メソッドが必要です。 これは、ウェブコンテンツのアーカイブ、記事のPDF生成、またはライブサイトの状態をキャプチャするのに役立ちます。

using IronPdf;
using System;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
pdf.SaveAs("url.pdf");
using IronPdf;
using System;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
pdf.SaveAs("url.pdf");
Imports IronPdf
Imports System

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
pdf.SaveAs("url.pdf")
$vbLabelText   $csharpLabel

ここで、RenderUrlAsPdf() はURL文字列を受け取り、コンテンツを取得し、レンダリングしてPdfDocumentを生成します。 using ステートメントは、PdfDocument が適切に破棄されることを保証します。 生成された「url.pdf」は、指定されたウェブページのPDFバージョンになります。 以下のコードの出力は次のとおりです。

C#でPDFを作成する(コード例チュートリアル)、図10:URLからレンダリングされたPDFファイルの出力

URLからレンダリングされたPDFファイル出力

人気のある複雑なサイトをPDFに変換する他の例。

C# PDF 作成(コード例チュートリアル)、図 11: 複雑なウェブサイトをレンダリングするもう一つの例

複雑なウェブサイトをレンダリングするもう一つの例

4. ASP.NET MVC を PDF にレンダリングする

C# を使用して ASP.NET MVC アプリケーション (.NET Framework を使用) 内で PDF ドキュメントを作成するには、HTML ファイルまたは文字列をレンダリングし、それを FileResult として返すことができます。 これは、サーバーサイドのロジックとデータに基づいてPDFを生成し、それをユーザーのブラウザに直接配信するのに役立ちます。

using IronPdf;
using System.Web;
using System.Web.Mvc; // Required for ActionResult and EmptyResult

public class PdfController : Controller
{
    public ActionResult DownloadPdfFromHtmlFile()
    {
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
        var renderer = new IronPdf.ChromePdfRenderer();
        string htmlFilePath = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html");
        using var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);

        var currentResponse = HttpContext.Current.Response;
        currentResponse.Clear();
        currentResponse.ContentType = "application/pdf";
        currentResponse.AddHeader("Content-Disposition", "attachment;filename=\"FileName.pdf\"");
        currentResponse.BinaryWrite(pdf.BinaryData);
        currentResponse.Flush();
        currentResponse.End();
        return new EmptyResult();
    }
}
using IronPdf;
using System.Web;
using System.Web.Mvc; // Required for ActionResult and EmptyResult

public class PdfController : Controller
{
    public ActionResult DownloadPdfFromHtmlFile()
    {
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
        var renderer = new IronPdf.ChromePdfRenderer();
        string htmlFilePath = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html");
        using var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);

        var currentResponse = HttpContext.Current.Response;
        currentResponse.Clear();
        currentResponse.ContentType = "application/pdf";
        currentResponse.AddHeader("Content-Disposition", "attachment;filename=\"FileName.pdf\"");
        currentResponse.BinaryWrite(pdf.BinaryData);
        currentResponse.Flush();
        currentResponse.End();
        return new EmptyResult();
    }
}
Imports IronPdf
Imports System.Web
Imports System.Web.Mvc ' Required for ActionResult and EmptyResult

Public Class PdfController
	Inherits Controller

	Public Function DownloadPdfFromHtmlFile() As ActionResult
		IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
		Dim renderer = New IronPdf.ChromePdfRenderer()
		Dim htmlFilePath As String = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html")
		Dim pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath)

		Dim currentResponse = HttpContext.Current.Response
		currentResponse.Clear()
		currentResponse.ContentType = "application/pdf"
		currentResponse.AddHeader("Content-Disposition", "attachment;filename=""FileName.pdf""")
		currentResponse.BinaryWrite(pdf.BinaryData)
		currentResponse.Flush()
		currentResponse.End()
		Return New EmptyResult()
	End Function
End Class
$vbLabelText   $csharpLabel

このMVCコントローラーアクションでは、RenderHtmlFileAsPdfが指定されたHTMLファイルを変換します。その後、Responseオブジェクトを使用して、PDFをクライアントにダウンロードとして送信します。 EmptyResult は、応答が直接処理されるため返されます。

5. RazorビューをPDFにレンダリングする

ASP.NET MVC アプリケーションにおいて、一般的なタスクは Razor ビューから C# で PDF を作成することです。 これにより、既存のビュー ロジックとモデルを使用して動的な HTML を生成し、それを IronPDF が PDF に変換します。 以下のヘルパーメソッドは、RazorビューをHTML文字列にレンダリングします。

using IronPdf;
using System.IO;
using System.Web.Mvc; // Required for ControllerContext, ViewEngines, etc.

public string RenderRazorViewToString(ControllerContext controllerContext, string viewName, object model)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    controllerContext.Controller.ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName);
        var viewContext = new ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
using IronPdf;
using System.IO;
using System.Web.Mvc; // Required for ControllerContext, ViewEngines, etc.

public string RenderRazorViewToString(ControllerContext controllerContext, string viewName, object model)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    controllerContext.Controller.ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName);
        var viewContext = new ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
Imports IronPdf
Imports System.IO
Imports System.Web.Mvc ' Required for ControllerContext, ViewEngines, etc.

Public Function RenderRazorViewToString(ByVal controllerContext As ControllerContext, ByVal viewName As String, ByVal model As Object) As String
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	controllerContext.Controller.ViewData.Model = model
	Using sw = New StringWriter()
		Dim viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName)
		Dim viewContext As New ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw)
		viewResult.View.Render(viewContext, sw)
		viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View)
		Return sw.GetStringBuilder().ToString()
	End Using
End Function
$vbLabelText   $csharpLabel

このメソッドは、ControllerContext、ビュー名、およびモデルを受け取り、RazorビューをHTML文字列にレンダリングします。 この文字列は、IronPDF の RenderHtmlAsPdf() メソッドに渡すことができ、Razor ビューがアセットに相対パスを使用している場合は BaseUri を設定することを忘れないようにしてください。 MVC ビューをバイナリ PDF ファイルとしてレンダリングする方法を学ぶために、.NET MVC PDF Guide ドキュメントをお読みください。

6. XMLをPDFに変換

XMLデータからC#でPDFを作成する必要がある場合、まずXSLT(拡張スタイルシート言語変換)を使用してXMLをHTMLに変換するのが堅実なアプローチです。 IronPDFはその結果のHTMLをPDFに変換できます。 これは、構造化されたXMLデータを人間が読みやすい形式で提示するのに役立ちます。

using IronPdf;
using System.Xml;
using System.Xml.Xsl;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
string xsltContent = @"<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>";
string xmlContent = "<root><item>Hello</item><item>World</item></root>";

XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(xsltContent))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(xmlContent))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
using IronPdf;
using System.Xml;
using System.Xml.Xsl;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
string xsltContent = @"<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>";
string xmlContent = "<root><item>Hello</item><item>World</item></root>";

XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(xsltContent))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(xmlContent))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
Imports IronPdf
Imports System.Xml
Imports System.Xml.Xsl
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim xsltContent As String = "<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>"
Dim xmlContent As String = "<root><item>Hello</item><item>World</item></root>"

Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(xsltContent))
	transform.Load(reader)
End Using
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(xmlContent))
	transform.Transform(reader, Nothing, results)
End Using
Dim Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
$vbLabelText   $csharpLabel

このコードスニペットは、XSLTを定義してXMLをシンプルなHTMLリストに変換します。XslCompiledTransformが変換を実行し、結果のHTML文字列がIronPDFによって「Final.pdf」にレンダリングされます。

7. PDFレポートを生成する

C#でPDFレポートを作成する際、特にカスタムヘッダー、フッター、ページ番号付きのものについては、IronPDFが非常に効果的です。通常のワークフローとしては、レポートデータをHTMLドキュメントとして生成し、そのHTMLをIronPDFを使用して整えられたPDFに変換します。

using IronPdf;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>");
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
using IronPdf;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>");
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
Imports IronPdf
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.FirstPageNumber = 1
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial"
Renderer.RenderingOptions.TextHeader.FontSize = 12
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica"
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>")
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf")
$vbLabelText   $csharpLabel

この例では、ヘッダー(ソースURLの表示)とフッター(日付、時刻、ページ番号付き)のさまざまなRenderingOptionsを設定します。 次に、これらの設定を使用して 'Report.html' という名前のHTMLファイルを 'Report.pdf' にレンダリングします。

C# PDF 作成 (コード例チュートリアル)、図 12: CSharp PDF 作成

CSharp で PDF を作成する例の出力

8. PDF画像とCSSを操作する

画像や外部CSSファイルを含むHTMLからC#でPDFドキュメントを作成する場合、IronPDFがこれらのアセットを検出できることが重要です。 これは、レンダリングメソッドにBaseUriを提供することによって達成され、HTML 内の相対URLのルートパスをIronPDFに伝えます。

using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");

using var advancedPDF = renderer.RenderHtmlFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");

using var advancedPDF = renderer.RenderHtmlFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>","C:\site\assets\")
pdf.SaveAs("html-with-assets.pdf")

Dim advancedPDF = renderer.RenderHtmlFileAsPdf("C:\Assets\TestInvoice1.html")
advancedPDF.SaveAs("Invoice.pdf")
$vbLabelText   $csharpLabel

最初の部分は、画像付きのHTML文字列をレンダリングすることを示しています。 BaseUriC:\site\assets)はicons/iron.pngを探す場所をIronPDFに伝えます。 第2部はHTMLファイルをレンダリングします。TestInvoice1.html が資産に対して相対パスを使用している場合、それらは C:\Assets に対して相対的に解決されます。

9. ASPXファイルをPDFに変換する

従来のASP.NET Web Formsアプリケーションに対して、IronPDFはC#で.aspxページから直接PDFを作成する方法を提供します。 これは IronPdf.Extensions.ASPX NuGet パッケージを必要とし、.NET Framework プロジェクトに特化しています。

using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf

Namespace aspxtopdf
	Partial Public Class SiteMaster
		Inherits MasterPage

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			IronPdf.AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

このASP.NET MasterPage(または任意の.aspxページ)のPage_Loadイベント内で、AspxToPdf.RenderThisPageAsPdf()が現在のページのレンダリング出力をPDFに変換します。 これは、ポストバックに関連する問題を避けるために、ボタンクリックイベントに配置する方が望ましいです。

C# PDF作成 (コード例チュートリアル)、図13: CSharp PDF作成

CSharp で PDF を作成する例の出力

10. HTMLからPDFへの例ファイルを見る

この例では、ライブURLをPDFに変換する方法を再検討します。これは、C#でウェブコンテンツのPDFアーカイブを作成したり、オンライン情報のスナップショットを共有したりする必要があるときに一般的な要件です。

using IronPdf;
using System;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
using IronPdf;
using System;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
Imports IronPdf
Imports System
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim uri As New Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/")
Dim pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri)
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"))
$vbLabelText   $csharpLabel

ここで、ChromePdfRenderer.StaticRenderUrlAsPdf()は、指定されたUriの内容を直接PdfDocumentに変換し、その後保存するための迅速な静的方法を提供します。 PDFファイルは、デバッグフォルダ内に作成されます。 こちらが出力です:

C# PDFの作成(コード例チュートリアル)、図14: CSharp PDFの作成

CSharp で PDF を作成する例の出力

クイックスタートガイドは、NuGet パッケージ マネージャーに不慣れな方のために、IronPDF を NuGet 経由でインストールする方法を説明しています。

.NET で PDF ファイルを生成する

この例は、ASP.NET Web Forms コンテキストでIronPDFを使用してPDFファイルを作成する方法をさらに示しています。具体的には、ボタンクリックに応じて現在のページをPDFとしてレンダリングします。 これは、ウェブフォームやレポートのダウンロード可能なPDFバージョンを生成するための一般的なシナリオです。

using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf

Namespace aspxtopdf
	Partial Public Class _Default
		Inherits Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
		End Sub

		Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			IronPdf.AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Button1がクリックされると、AspxToPdf.RenderThisPageAsPdf()は現在のASP.NETページのレンダリングされた出力をキャプチャし、それをPDFとしてブラウザにストリームします。 これは、IronPdf.Extensions.ASPX NuGet パッケージを必要とします。

C# PDF作成(コード例チュートリアル)、図15:CSharp PDF作成

CSharp で PDF を作成する例の出力

これにはIronPdf.Extensions.ASPXNuGet公式ページからインストールする必要があります。 .NET Coreでは利用できません。ASPXはMVCモデルによって置き換えられています。

12. PDFドキュメントを生成する(より基本的な例)

HTML文字列からPDFを作成するためのもう一つの簡単な例です。 これは、HTMLコンテンツが最小限であるか、即座に生成される非常に簡単なPDF生成のニーズに役立ちます。

using IronPdf;

private void HTMLString()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
using IronPdf;

private void HTMLString()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
Imports IronPdf

Private Sub HTMLString()
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
	Dim outputPath = "ChromePdfRenderer.pdf"
	pdf.SaveAs(outputPath)
End Sub
$vbLabelText   $csharpLabel

このプライベートメソッドは、単純なH1タグからPDFを作成して保存する方法を示しています。

以下のコードは、Page_Loadイベント内でASPXページから直接PDFを作成する方法を示しています。 可能性はあるものの、このアプローチはページのライフサイクルイベントやポストバックに関する潜在的な問題があるため、慎重に使用する必要があります。 しばしば、特定のユーザーアクション(例えば、ボタンクリック)によってPDF生成をトリガーする方が、より信頼性が高いです。

using System;
using System.Web.UI;
using IronPdf;

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
using System;
using System.Web.UI;
using IronPdf;

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Imports System
Imports System.Web.UI
Imports IronPdf

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
$vbLabelText   $csharpLabel

IronPDFはChromiumレンダリングエンジンを介してJavaScriptをうまくサポートしています。ただし、1つの条件として、JavaScriptが実行される時間を確保するために、PDFを生成する際にページのレンダリングに遅延を追加する必要があるかもしれません。

13. PDFライブラリ for .NET (WinFormsの例)

IronPDFは、Windows Forms(WinForms)デスクトップアプリケーションでPDFを作成するために簡単に統合できます。 この例では、TextBoxからユーザー入力を取得し、ButtonがクリックされたときにPDFを生成する方法を示します。

using IronPdf;
using System.Windows.Forms;
using System;
using System.ComponentModel;
using System.Drawing;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        private TextBox textBox1;
        private Button button1;
        private IContainer components = null;

        public Form1()
        {
            InitializeComponent();
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        private void InitializeComponent()
       {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.button1 = new System.Windows.Forms.Button();
           this.SuspendLayout();

            this.textBox1.Location = new System.Drawing.Point(12, 12);
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(260, 20);
            this.textBox1.TabIndex = 0;

            this.button1.Location = new System.Drawing.Point(12, 38);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(100, 23);
            this.button1.TabIndex = 1;
            this.button1.Text = "Create PDF";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(284, 73);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "PDF Creator";
            this.ResumeLayout(false);
            this.PerformLayout();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            var renderer = new ChromePdfRenderer();
            string text = textBox1.Text;
            renderer.RenderHtmlAsPdf("<h1>"+ System.Net.WebUtility.HtmlEncode(text) +"</h1>").SaveAs("custom.pdf");
            MessageBox.Show("Done !");
        }
    }
}
using IronPdf;
using System.Windows.Forms;
using System;
using System.ComponentModel;
using System.Drawing;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        private TextBox textBox1;
        private Button button1;
        private IContainer components = null;

        public Form1()
        {
            InitializeComponent();
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        private void InitializeComponent()
       {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.button1 = new System.Windows.Forms.Button();
           this.SuspendLayout();

            this.textBox1.Location = new System.Drawing.Point(12, 12);
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(260, 20);
            this.textBox1.TabIndex = 0;

            this.button1.Location = new System.Drawing.Point(12, 38);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(100, 23);
            this.button1.TabIndex = 1;
            this.button1.Text = "Create PDF";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(284, 73);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "PDF Creator";
            this.ResumeLayout(false);
            this.PerformLayout();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            var renderer = new ChromePdfRenderer();
            string text = textBox1.Text;
            renderer.RenderHtmlAsPdf("<h1>"+ System.Net.WebUtility.HtmlEncode(text) +"</h1>").SaveAs("custom.pdf");
            MessageBox.Show("Done !");
        }
    }
}
Imports IronPdf
Imports System.Windows.Forms
Imports System
Imports System.ComponentModel
Imports System.Drawing

Namespace ReadPdf
	Partial Public Class Form1
		Inherits Form

		Private textBox1 As TextBox
		Private WithEvents button1 As Button
		Private components As IContainer = Nothing

		Public Sub New()
			InitializeComponent()
		End Sub

		Protected Overrides Sub Dispose(ByVal disposing As Boolean)
			If disposing AndAlso (components IsNot Nothing) Then
				components.Dispose()
			End If
			MyBase.Dispose(disposing)
		End Sub

		Private Sub InitializeComponent()
			Me.textBox1 = New System.Windows.Forms.TextBox()
			Me.button1 = New System.Windows.Forms.Button()
		   Me.SuspendLayout()

			Me.textBox1.Location = New System.Drawing.Point(12, 12)
			Me.textBox1.Name = "textBox1"
			Me.textBox1.Size = New System.Drawing.Size(260, 20)
			Me.textBox1.TabIndex = 0

			Me.button1.Location = New System.Drawing.Point(12, 38)
			Me.button1.Name = "button1"
			Me.button1.Size = New System.Drawing.Size(100, 23)
			Me.button1.TabIndex = 1
			Me.button1.Text = "Create PDF"
			Me.button1.UseVisualStyleBackColor = True
'INSTANT VB NOTE: The following InitializeComponent event wireup was converted to a 'Handles' clause:
'ORIGINAL LINE: this.button1.Click += new System.EventHandler(this.button1_Click);

			Me.AutoScaleDimensions = New System.Drawing.SizeF(6F, 13F)
			Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
			Me.ClientSize = New System.Drawing.Size(284, 73)
			Me.Controls.Add(Me.button1)
			Me.Controls.Add(Me.textBox1)
			Me.Name = "Form1"
			Me.Text = "PDF Creator"
			Me.ResumeLayout(False)
			Me.PerformLayout()
		End Sub

		Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles button1.Click
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			Dim renderer = New ChromePdfRenderer()
'INSTANT VB NOTE: The variable text was renamed since Visual Basic does not handle local variables named the same as class members well:
			Dim text_Conflict As String = textBox1.Text
			renderer.RenderHtmlAsPdf("<h1>" & System.Net.WebUtility.HtmlEncode(text_Conflict) &"</h1>").SaveAs("custom.pdf")
			MessageBox.Show("Done !")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

このWinFormsコードは、TextBoxButtonを持つシンプルなUIを初期化します。 ボタンをクリックすると、textBox1からテキストを取得し、それをH1 HTMLタグで囲み(セキュリティのためにユーザー入力をHTMLエンコードすることを確認)、'custom.pdf' にレンダリングします。

14. Chrome PDF レンダリングエンジン

IronPDF の Chrome PDF レンダリングエンジンは、元の HTML ソースから PDF ドキュメントの「Chrome Identical」PDF レンダリングを保証します。

以下は、Chrome PDFレンダリング機能のいくつかの特徴です:

  • 20% Faster Renders: CPUコアを好きなだけ使用して、手間のかからないマルチスレッドと非同期を提供します。 SAASや高負荷アプリケーションにとって、これは直接のブラウザ使用やウェブドライバーを凌駕し、5倍から20倍速くなる可能性があります。
  • フルウェブサポート: JavaScript、レスポンシブラヨウトおよびCSS3のフルサポート。
  • 厳密にテスト済み: リリースは1156のグリーンユニットおよび統合テストをパスしており(レッドなし)、メインリリースと同様の安定性を確保し、毎日継続的かつ積極的に改善しています。
  • セクション508アクセシビリティコンプライアンス: PDF(UA)タグ付きPDF標準を使用してアクセシブルなPDFを作成します。
  • Azure を最優先: ただ機能します。
  • .NET 6、5、Core、およびFramework 4.0+の継続的なメンテナンスとサポートの強化。

    Chromeレンダリングエンジンのマルチスレッドと非同期サポート機能を探る。

    例を示します:

using IronPdf;
using IronPdf.Rendering;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
using IronPdf;
using IronPdf.Rendering;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
Imports IronPdf
Imports IronPdf.Rendering

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>")
doc.SaveAs("google_chrome.pdf")
$vbLabelText   $csharpLabel

なぜIronPDFをPDFのニーズに選ぶのか?

他のPDFライブラリが利用可能である一方で、IronPDFは効率的で高品質なPDF生成に焦点を当てた開発者向けにいくつかの魅力的な利点を提供します:

  • ピクセルパーフェクトのHTMLからPDFへ: Chromeエンジンを活用して、IronPDFはHTMLからPDFを作成する際、出力がモダンなウェブブラウザで表示されるものとほぼ同一であり、複雑なCSSやJavaScriptを保ちながら実現します。
  • 使いやすさ: 直感的なAPIと包括的なドキュメントにより、このチュートリアルの随所で示されているように、迅速に始めることができます。 HTML文字列やURLをPDFに変換するような一般的なタスクは、最小限のコードで実行できます。
  • 迅速なセットアップと統合: シンプルなNuGetのインストールと直感的なAPIを使用して、数分でプロジェクトでPDFの作成を開始できます。一部のライブラリがより複雑な構成を必要とするのとは異なります。
  • 包括的な機能セット: HTMLからの基本的なPDF作成に加えて、IronPDFはヘッダー/フッター、フォーム入力、デジタル署名、パスワード保護、PDFの結合など、多くの機能をサポートしています。
  • パフォーマンスとスケーラビリティ: 最新のマルチスレッドアプリケーションのために設計されたIronPDFは、要求の厳しいPDF生成タスクを処理でき、サーバー環境でのスケールも良好です。
  • 優れたサポートと定期的な更新: プロフェッショナルサポートと、積極的に維持・改善されているライブラリを活用できます。

よくある質問 (FAQ)

Q: HTMLからPDFを作成する最も簡単な方法は何ですか?

多くの開発者は、IronPDFが簡単なRenderHtmlAsPdfメソッドとHTML標準を強力にサポートしているため、最も簡単な方法の1つだと考えています。 わずか数行のコードで、HTML文字列またはURLからPDFファイルを作成できます。

Q: IronPDFは無料のPDFライブラリですか?

IronPDFは、開発およびテスト用の無料ライセンスを提供しています。 本番環境に配備するには商用ライセンスが必要です。 彼らはすべての機能を評価するための試用期間を提供しています。

Q: IronPDFはJavaScriptおよびCSS3を使用した複雑なウェブページを変換できますか?

A: はい、IronPDFは最新のChromiumエンジンを使用しており、HTML5、CSS3、JavaScript、レスポンシブレイアウト、および他のWeb技術に対する優れたサポートを提供し、PDFファイルを作成する際に正確なレンダリングを実現します。

Q: IronPDF は大規模な PDF の生成に対応していますか?

A: はい、IronPDFはパフォーマンスを考慮して設計されており、かなりのサイズのPDFドキュメントを効率的に作成できます。そのレンダリングエンジンと非同期操作のオプションにより、要求の厳しいアプリケーションに適しています。

15. まとめ

お読みいただきありがとうございます! この包括的なチュートリアルでは、IronPDF を使用して .NET で PDF ドキュメントを作成するためのいくつかの強力な方法を紹介しました。 HTMLをPDFに変換する必要がある場合でも、URLをレンダリングする必要がある場合でも、複雑なレポートを生成する必要がある場合でも、IronPDFは直感的で強力なソリューションを提供します。 JavaScript、CSS、画像のサポートといった高度な機能と使いやすさが相まって、高品質なPDFドキュメントを効率的に作成しようとする開発者にとって理想的な選択肢となっています。

PDF生成を簡素化し、ドキュメントワークフローを制御する準備はできましたか?

チペゴ
ソフトウェアエンジニア
チペゴは優れた傾聴能力を持ち、それが顧客の問題を理解し、賢明な解決策を提供する助けとなっています。彼は情報技術の学士号を取得後、2023年にIron Softwareチームに加わりました。現在、彼はIronPDFとIronOCRの2つの製品に注力していますが、顧客をサポートする新しい方法を見つけるにつれて、他の製品に関する知識も日々成長しています。Iron Softwareでの協力的な生活を楽しんでおり、さまざまな経験を持つチームメンバーが集まり、効果的で革新的な解決策を提供することに貢献しています。チペゴがデスクを離れているときは、良い本を楽しんだり、サッカーをしていることが多いです。
< 以前
.NET Core PDFライブラリ
次へ >
x509certificate2を使用してPDFにデジタル署名をプログラムで追加
OSZAR »