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

IronPDFとPDFium.NETの比較

この比較では、PDFの作成、操作、レンダリングを行うための2つの.NETライブラリであるIronPDFとPDFium .NET SDKについて、アーキテクチャ、機能範囲、ライセンスの観点から比較します。 どちらのライブラリもPDFの作成と処理が可能ですが、レンダリングモデルとAPIインターフェースは大きく異なります。

PDFium .NETとは何ですか?

PDFium.NETはファイルをPDF(ポータブルドキュメントフォーマット)として作成、変更、表示するために使用されます。 ウェブサーバー上でダイナミックなPDF作成を行うための高レベルC#/VB.NET APIを提供し、既存のデスクトップまたはウェブアプリケーションに<強>PDFとして保存</強>機能を実装することができます。

PDFium.NETの注目すべき特徴は次のとおりです:

  • ゼロから、またはスキャンした画像のコレクションからPDFを作成
  • 編集、分割、結合、操作、テキスト抽出を含むPDFのための即戦力のツールバー
  • 独立したWinformsまたはWPFのPDFビューアーコントロールの埋め込みズームをサポート
  • .NET 2.0+, .NET 6, Standard, Core, Mono, Microsoft Azureをサポート
  • Windows XPやMac OSでも動作します
  • PDFレンダリング機能の全範囲をサポート
  • 高性能なPDFビューアー、検索、印刷、PDFファイルの編集
  • 極めて高速なテキスト処理エンジン

IronPDF:主要機能と性能

IronPDF .NET PDFライブラリは、開発者、特にC#開発者向けに設計されています。 このPDFライブラリを使用すると、 .NETプロジェクトにPDFの表示、生成、および操作機能を追加できます。

IronPDFにはChromiumエンジンが内蔵されており、わずか3行のC#コードでHTMLをPDFに変換できます。 これは、PDFファイルを操作するための低レベルの座標APIを必要としません。 HTMLドキュメント、 JavaScriptファイル、ASPXウェブページなどのHTMLソースファイルを処理でき、単一のメソッド呼び出しで任意のHTML文字列を直接PDFにレンダリングできます。

IronPDFはカスタムヘッダーとフッター、ウォーターマークなどを使用してPDFをカスタマイズできます。 また、開発者にとってPDFテキストの閲覧やグラフィックの抽出を容易にします。

IronPDF for .NETの注目すべき特徴には次のものがあります:

  • HTML4/5、CSS、JavaScriptを使用してPDFドキュメントを作成
  • カスタムネットワークログイン認証情報、ユーザーエージェント、プロキシ、クッキー、HTTPヘッダー、フォーム変数を用いてURLを読み込む。
  • HTML/PDFフォームフィールドをプログラムで完了
  • PDFファイルからのテキストとグラフィックの抽出
  • 新しいコンテンツでPDFページを更新
  • PDFにヘッダーとフッターを追加しカスタマイズ
  • PDF文書の結合と分割
  • ASP.NETウェブフォームを印刷可能なPDFに変換
  • HTMLファイル/URLをPDFに変換
  • Adobe Acrobat Readerを使用せずにPDFファイルを印刷

IronPDFライブラリは、C#に対応したほぼすべてのオペレーティングシステムとフレームワークで利用できます。以下を含む:

  • .NET Core 2.1, 3.0, 3.1, .NET 5, 6, および 7
  • .NET Standard 2.0 のユニバーサル互換性への準拠
  • Azure, AWS, Docker, Linux, Windows

以下の表は、コードレベルの詳細に入る前に、各ライブラリの強みをまとめたものです。

フィーチャー IronPDF PDFium.NET
HTML/URLからPDFへの変換 はい(Chromiumエンジン内蔵) 含まれていません
画像/テキストからのPDF作成 はい はい
PDFマージ はい はい(ページ範囲選択の場合)
デジタル署名 はい 含まれていません
PDFビューアコントロール(WinForms/WPF) 含まれていません はい
.NET Core / .NET 5 以降をサポート はい はい
クロスプラットフォーム(Linux、macOS、Azure) はい WindowsとmacOS

IronPDFのHTMLレンダリングとPDFium.NETに対するセキュリティ機能をあなたのプロジェクトでテストするために、30日間無料トライアルをご利用いただけます。

この記事の残りの部分は以下の通りです:

1.IronPDFC# ライブラリのインストール

  1. PDFium.NET SDKのインストール
  2. PDFドキュメントの作成
  3. 複数の画像からPDFを作成
  4. PDFにデジタル署名を付ける
  5. 価格とライセンス
  6. 結論

1.IronPDFC#ライブラリのインストール

IronPDFライブラリをダウンロードしてインストールするにはさまざまな方法があります。 最も簡単な方法は次のとおりです:

  1. Visual Studioを使用
  2. 開発者コマンドプロンプト
  3. NuGetパッケージを直接ダウンロード
  4. IronPdf.DLLライブラリをダウンロード

1.1. Visual Studio を使用

Visual Studioプロジェクトで、"ツール"メニューまたはソリューションエクスプローラーでプロジェクトを右クリックし、"NuGetパッケージの管理"を選択します。 これらのオプションは下記のスクリーンショットに示されています。

IronPDFとPDFium.NETの比較、図1:ツールメニューからNuGetパッケージマネージャーにアクセスする
IronPDF と PDFium.NET の比較、図 2: ソリューション エクスプローラーを使用して NuGet パッケージ マネージャーにアクセスする

NuGetパッケージマネージャを開いたら、IronPDFパッケージを探してインストールしてください。下記のスクリーンショットに示されています。

IronPDFとPDFium.NETの比較、図3: NuGetパッケージマネージャーを使用したIronPDFライブラリのインストール

1.2. 開発者コマンドプロンプトの使用

IronPDFは開発者用コマンドプロンプトからでもダウンロード可能です。 以下の手順に従ってください。

  • ツールメニューから開発者向けコマンドプロンプトもしくはパッケージ管理コンソールを開く
  • 次のコマンドを入力:
Install-Package IronPdf
  • エンターキーを押す
  • これでライブラリがダウンロードおよびインストールされます。

1.3. NuGetパッケージを直接ダウンロード

IronPDFは、NuGet IronPDFパッケージを訪問することで直接ダウンロードすることもできます。 手順は次の通りです:

  • Download Packageを探してそれをクリックします。
  • パッケージがダウンロードおよびインストールされます。

1.4. ライブラリをダウンロードしてIronPDFをインストール

IronPDFのパッケージページからIronPdf.DLLファイルを直接ダウンロードすることができます。

IronPDFとPDFium.NETの比較、図4: IronPDFのWebサイトからIronPDFライブラリDLLをダウンロードする

次の手順でプロジェクトにIronPDFライブラリを参照してください:

  • ソリューションエクスプローラーでソリューションを右クリックし、参照を選択
  • IronPDF.dllライブラリをブラウズ
  • OKをクリック!

これで完了です! IronPDFはダウンロードされ、インストールされました。 次に、PDFium.NET SDKライブラリのインストールに取り掛かります。

2. PDFium.NETのインストール

NuGetパッケージマネージャーを使用するかPDFiumのWindowsインストーラーをダウンロードすることでPDFium.NETをインストールできます。

  • IronPDFで行ったように、Visual StudioでNuGetパッケージを開く。
  • PDFium.NET.SDKを検索します。 現在のプロジェクトでインストールをクリックします。
IronPDFとPDFium.NETの比較、図5:PDFium.NET検索
  • パッケージマネージャコンソールを使用してインストールすることも可能です。 IronPDFのために記載された"開発者コマンドプロンプトを使用する"手順に従い、次のコマンドを入力してください:
Install-Package Pdfium.Net.SDK
  • Enterキーを押します。 これによってライブラリがダウンロードされインストールされます。

3. PDFドキュメントの作成

3.1. IronPDFを使用する

IronPDFはPDFファイルを生成するための複数の方法を提供します。 重要な2つを見てみましょう。

既存のURLをPDFに変換

IronPDFは、内蔵のChromiumレンダリングエンジンを使用して、既存のURLを直接PDFに変換します。

次のソースコードをご覧ください。

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Use RenderUrlAsPdf method to convert a given URL to a PDF document
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Save the generated PDF document
Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Use RenderUrlAsPdf method to convert a given URL to a PDF document
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Save the generated PDF document
Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()

' Use RenderUrlAsPdf method to convert a given URL to a PDF document
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")

' Save the generated PDF document
Pdf.SaveAs("url.pdf")
$vbLabelText   $csharpLabel

HTML入力文字列をPDFに変換

以下のコードスニペットは、HTML文字列をPDFページにレンダリングする方法を示しています。 シンプルなHTMLを使用することも、CSS、画像、変換前に実行されるJavaScriptコンテンツと組み合わせることもできます。

var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML as a PDF
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external HTML assets: images, css, and javascript
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", @"e:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML as a PDF
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external HTML assets: images, css, and javascript
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", @"e:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Imports IronPdf

Dim Renderer As New ChromePdfRenderer()

' Render HTML as a PDF
Using PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
    PDF.SaveAs("pixel-perfect.pdf")
End Using

' Load external HTML assets: images, css, and javascript
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Using AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", "e:\site\assets\")
    AdvancedPDF.SaveAs("html-with-assets.pdf")
End Using
$vbLabelText   $csharpLabel

出力は以下の通りです。

IronPDFとPDFium.NETの比較、図6:IronPDFはURLとHTML文字列からPDFを生成します

3.2. PDFium.NETを使用

PDFium .NETは、画像とテキストオブジェクトを使用して、PDFドキュメントを動的に生成します。 そのレンダリングパイプラインは、HTMLベースの変換ではなく、低レベルのページ構成を中心に構築されているため、URLやHTML文字列からPDFへのワークフローは、現在のところその機能範囲外です。

次に、PDFium.NETを使用してPDFを生成するサンプルコードを示します:

public void CreatePDF()
{
    // Step 1: Initialize PDF library and create an empty document
    PdfCommon.Initialize();
    var doc = PdfDocument.CreateNew();  // Create a new PDF document

    // Step 2: Add a new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is a point. There are 72 points in one inch.
    var page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27f * 72, 11.69f * 72);

    // Step 3: Add graphics and text contents to the page
    // Insert image from file using the standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        // Set image resolution to 300 DPI and location to 1.69 x 10.0 inches
        imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
        page.PageObjects.Add(imageObject);
    }

    // Create fonts for text objects
    PdfFont calibryBold = PdfFont.CreateFont(doc, "CalibriBold");
    // Insert text objects at 7.69"; 11.02" and font size is 25
    PdfTextObject textObject = PdfTextObject.Create("Sample text", 7.69f * 72, 11.02f * 72, calibryBold, 25);
    textObject.FillColor = FS_COLOR.Black;
    page.PageObjects.Add(textObject);

    // Step 5: Generate page content and save PDF file
    // Argument: PDF file name
    page.GenerateContent();
    doc.Save(@"e:\site\sample_document.pdf", SaveFlags.NoIncremental);
}
public void CreatePDF()
{
    // Step 1: Initialize PDF library and create an empty document
    PdfCommon.Initialize();
    var doc = PdfDocument.CreateNew();  // Create a new PDF document

    // Step 2: Add a new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is a point. There are 72 points in one inch.
    var page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27f * 72, 11.69f * 72);

    // Step 3: Add graphics and text contents to the page
    // Insert image from file using the standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        // Set image resolution to 300 DPI and location to 1.69 x 10.0 inches
        imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
        page.PageObjects.Add(imageObject);
    }

    // Create fonts for text objects
    PdfFont calibryBold = PdfFont.CreateFont(doc, "CalibriBold");
    // Insert text objects at 7.69"; 11.02" and font size is 25
    PdfTextObject textObject = PdfTextObject.Create("Sample text", 7.69f * 72, 11.02f * 72, calibryBold, 25);
    textObject.FillColor = FS_COLOR.Black;
    page.PageObjects.Add(textObject);

    // Step 5: Generate page content and save PDF file
    // Argument: PDF file name
    page.GenerateContent();
    doc.Save(@"e:\site\sample_document.pdf", SaveFlags.NoIncremental);
}
Public Sub CreatePDF()
	' Step 1: Initialize PDF library and create an empty document
	PdfCommon.Initialize()
	Dim doc = PdfDocument.CreateNew() ' Create a new PDF document

	' Step 2: Add a new page
	' Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
	'  The PDF unit of measure is a point. There are 72 points in one inch.
	Dim page = doc.Pages.InsertPageAt(doc.Pages.Count, 8.27F * 72, 11.69F * 72)

	' Step 3: Add graphics and text contents to the page
	' Insert image from file using the standard System.Drawing.Bitmap class
	Using logo As PdfBitmap = PdfBitmap.FromFile("e:\site\assets\logo_square.png")
		Dim imageObject As PdfImageObject = PdfImageObject.Create(doc, logo, 0, 0)
		' Set image resolution to 300 DPI and location to 1.69 x 10.0 inches
		imageObject.Matrix = New FS_MATRIX(logo.Width * 72 \ 300, 0, 0, logo.Height * 72 \ 300, 1.69 * 72, 10.0 * 72)
		page.PageObjects.Add(imageObject)
	End Using

	' Create fonts for text objects
	Dim calibryBold As PdfFont = PdfFont.CreateFont(doc, "CalibriBold")
	' Insert text objects at 7.69"; 11.02" and font size is 25
	Dim textObject As PdfTextObject = PdfTextObject.Create("Sample text", 7.69F * 72, 11.02F * 72, calibryBold, 25)
	textObject.FillColor = FS_COLOR.Black
	page.PageObjects.Add(textObject)

	' Step 5: Generate page content and save PDF file
	' Argument: PDF file name
	page.GenerateContent()
	doc.Save("e:\site\sample_document.pdf", SaveFlags.NoIncremental)
End Sub
$vbLabelText   $csharpLabel

出力は以下の通りです。

IronPDFとPDFium.NETの比較、図7:PDFium.NETによるPDF生成

2つの出力結果を比較すると、IronPDFのHTMLレンダリング方式では画像の配置が自動的に処理されるため、手動でのサイズ調整は不要です。また、必要に応じて単体の画像を直接PDF文書に変換することもできます。 PDFium .NETでも同様の結果が得られますが、コンテンツを正しく配置するために明示的な画像スケーリングコードに依存しています。 コードにおいて次の行をスキップした場合:

imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
imageObject.Matrix = new FS_MATRIX(logo.Width * 72 / 300, 0, 0, logo.Height * 72 / 300, 1.69 * 72, 10.0 * 72);
imageObject.Matrix = New FS_MATRIX(logo.Width * 72 \ 300, 0, 0, logo.Height * 72 \ 300, 1.69 * 72, 10.0 * 72)
$vbLabelText   $csharpLabel

出力は次のとおりです:

IronPDFとPDFium.NETの比較、図8:画像スケーリングなしのPDFium.NET出力

4. 複数の画像からPDFを作成

4.1. IronPDFを使用

IronPDFでは複数のPDFをマージすることは簡単です。 CODE-1338--@@@ メ ソ ッ ド を使っ て、 2 個ない し 複数の PDF を結合す る こ と がで き ます。 コードは次のようになります:

using IronPdf;

var html_a = @"<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_B] 2nd Page</p>";

var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML documents as PDFs
var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);

// Merge the documents into one PDF
var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

// Save the merged document
merged.SaveAs("Merged.PDF");
using IronPdf;

var html_a = @"<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_B] 2nd Page</p>";

var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML documents as PDFs
var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);

// Merge the documents into one PDF
var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

// Save the merged document
merged.SaveAs("Merged.PDF");
Imports IronPdf

Dim html_a As String = "<p> [PDF_A] </p>
                <p> [PDF_A] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_A] 2nd Page</p>"

Dim html_b As String = "<p> [PDF_B] </p>
                <p> [PDF_B] 1st Page </p>
                <div style = 'page-break-after: always;'></div>
                <p> [PDF_B] 2nd Page</p>"

Dim Renderer As New IronPdf.ChromePdfRenderer()

' Render HTML documents as PDFs
Dim pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Dim pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)

' Merge the documents into one PDF
Dim merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

' Save the merged document
merged.SaveAs("Merged.PDF")
$vbLabelText   $csharpLabel

4.2. PDFium.NET を使用

PDFium.NETを使用すると、複数のPDFファイルを一つのファイルにマージするだけでなく、ソースファイルから特定のページを選択して一つのPDFドキュメントにまとめることもできます。

以下のコードは、ImportPagesメソッドを使ってどのように行うことができるかを示しています:

public void MergePDF()
{
    // Initialize the SDK library.
    PdfCommon.Initialize();

    // Open and load a PDF document into which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // Read source PDF File #1
    {
        // Open one PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc1.pdf")) // Read PDF File #2
        {
            // Import all pages from the document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        // Open another PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc2.pdf"))
        {
            // Import all pages from the document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        // Save the merged document
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
public void MergePDF()
{
    // Initialize the SDK library.
    PdfCommon.Initialize();

    // Open and load a PDF document into which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // Read source PDF File #1
    {
        // Open one PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc1.pdf")) // Read PDF File #2
        {
            // Import all pages from the document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        // Open another PDF document.
        using (var doc = PdfDocument.Load(@"c:\doc2.pdf"))
        {
            // Import all pages from the document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }

        // Save the merged document
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
Public Sub MergePDF()
	' Initialize the SDK library.
	PdfCommon.Initialize()

	' Open and load a PDF document into which other files will be merged 
	Using mainDoc = PdfDocument.Load("c:\test001.pdf") ' Read source PDF File #1
		' Open one PDF document.
		Using doc = PdfDocument.Load("c:\doc1.pdf") ' Read PDF File #2
			' Import all pages from the document
			mainDoc.Pages.ImportPages(doc, String.Format("1-{0}", doc.Pages.Count), mainDoc.Pages.Count)
		End Using

		' Open another PDF document.
		Using doc = PdfDocument.Load("c:\doc2.pdf")
			' Import all pages from the document
			mainDoc.Pages.ImportPages(doc, String.Format("1-{0}", doc.Pages.Count), mainDoc.Pages.Count)
		End Using

		' Save the merged document
		mainDoc.Save("c:\ResultDocument.pdf", SaveFlags.NoIncremental)
	End Using
End Sub
$vbLabelText   $csharpLabel

5. PDFにデジタル署名を追加

5.1. IronPDFを使用

今日最も重要な機能の一つは、PDF文書にPFX証明書を用いてデジタル署名を行うことです。 IronPDFはこの機能を提供します。 コードは次の通りです:

using IronPdf;

// Cryptographically sign an existing PDF in 1 line of code!
new IronPdf.Signing.PdfSignature("Iron.p12", "123456").SignPdfFile("any.pdf");

/***** Advanced example for more control *****/

// Step 1. Create a PDF
var Renderer = new IronPdf.ChromePdfRenderer();
var doc = Renderer.RenderHtmlAsPDF("<h1>Testing 2048 bit digital security</h1>");

// Step 2. Create a Signature.
// You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

var signature = new IronPdf.Signing.PdfSignature("Iron.pfx", "123456");

// Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png");

// Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature);

// Step 4. The PDF is not signed until saved to file, stream, or byte array.
doc.SaveAs("signed.pdf"); 
using IronPdf;

// Cryptographically sign an existing PDF in 1 line of code!
new IronPdf.Signing.PdfSignature("Iron.p12", "123456").SignPdfFile("any.pdf");

/***** Advanced example for more control *****/

// Step 1. Create a PDF
var Renderer = new IronPdf.ChromePdfRenderer();
var doc = Renderer.RenderHtmlAsPDF("<h1>Testing 2048 bit digital security</h1>");

// Step 2. Create a Signature.
// You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

var signature = new IronPdf.Signing.PdfSignature("Iron.pfx", "123456");

// Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png");

// Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature);

// Step 4. The PDF is not signed until saved to file, stream, or byte array.
doc.SaveAs("signed.pdf"); 
Imports IronPdf

' Cryptographically sign an existing PDF in 1 line of code!
Call New IronPdf.Signing.PdfSignature("Iron.p12", "123456").SignPdfFile("any.pdf")

'/***** Advanced example for more control *****/

' Step 1. Create a PDF
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>")

' Step 2. Create a Signature.
' You may create a .pfx or .p12 PDF signing certificate using Adobe Acrobat Reader.

Dim signature = New IronPdf.Signing.PdfSignature("Iron.pfx", "123456")

' Step 3. Handwritten signature graphic
signature.LoadSignatureImageFromFile("handwriting.png")

' Step 4. Sign the PDF with the PDFSignature. Multiple signing certificates may be used
doc.SignPdfWithDigitalSignature(signature)

' Step 4. The PDF is not signed until saved to file, stream, or byte array.
doc.SaveAs("signed.pdf")
$vbLabelText   $csharpLabel

デジタル署名はPDFium.NETの現在の機能範囲外であるため、この機能が必要なチームは、追加のライブラリを統合するか、デジタル署名を主要な機能として備えているIronPDFのようなツールを検討する必要があります。

6. 価格とライセンス

IronPDFの価格とライセンス

IronPDFはシンプルなアプリケーションを開発するために無料で使用でき、商用利用のためにはいつでもライセンスを取得することができます。シングルプロジェクトライセンス、シングルデベロッパーライセンス、エージェンシー、及び多国籍組織向けライセンスを提供します。 また、SaaSとOEM再配布ライセンスおよびサポートも提供しています。

すべてのIronPDFライセンスは30日間の返金保証、ソフトウェアサポートとアップグレードが1年間付属しています。 最も重要なのは、これが永続ライセンス(1回限りの購入)であることです。 ライトパッケージが利用可能です。 IronPDF製品には継続的な費用は一切ありません。 利用可能なライセンスについてのより詳しい情報はIronPDFライセンスページにあります。

A Comparison betweenIronPDFand PDFium.NET, Figure 9:IronPDFLicensing

PDFium.NETの価格とライセンス

PDFium.NETは永続ライセンスを提供します。 登録キーと共にこのサポートされたSDKバージョンを永遠に使用することができます。 ただし、そのキーは、ライセンス購入または更新の日付に依存する特定のSDKバージョンでのみ機能します。 購入日の前または購入後1年以内にリリースされたものである限り、新しい製品のバージョンを無料でインストールすることができます。 また、PDFium.NETは3つの異なるライセンスパッケージを提供しています:

  • シングルプロジェクトライセンスは、単一の開発者および小規模チームで一つのプロジェクトを作業している開発者用に設計されています。 720ドルから開始。
  • 組織ライセンスは、複数のプロジェクトに取り組む開発チーム用に設計されています。
  • シングルデベロッパーライセンスは、複数のクライアントのために働いている単一の開発者およびフリーランサー用に設計されています。

完全な価格の詳細については、PDFium.NET購入ページをご覧ください。

ライセンス費用以外にも、プロジェクトの総費用には、座標ベースのページレイアウト、手動による画像スケーリング、デジタル署名やHTMLからPDFへの変換といった機能を実現するための別個のライブラリの統合に費やされた開発者の時間が含まれます。 複数年にわたるプロジェクトライフサイクル全体でコストを評価するチームにとって、こうした統合および保守にかかる時間は、2つの図書館の定価の差額をしばしば上回る。

どちらのライブラリを選ぶべきか?

IronPDFは、座標ベースのレイアウトコードを必要とせずに、PDFドキュメントをゼロから作成するための高レベルAPIを提供します。 内蔵のChromiumエンジンは、HTML、JS、CSS、JPG、PNG、GIF、SVGを、CSS3とモダンレイアウトを完全にサポートしたPDFに変換します。

PDFium.NET SDKは、開発者が非常に手頃な価格で必要とする最も一般的なニーズを満たすように設計された.NETクラスライブラリです。PDFium.NET SDKを使用すると、あなたのアプリは charm のようにPDF文書を表示および操作することができます。 このライブラリを特に強力にしているものは、その特別なページオブジェクト編集APIです。

PDFium.NETライセンスは上記の3つのエディションです。 シングルプロジェクトライセンスは単一の開発者および3人までの開発者向けにそれぞれ720ドルおよび900ドルから始まります。 これは、ライトバージョンがより低価格から始まるIronPDFよりも若干安価です。

IronPDFは競争力のある価格で無制限ライセンスを提供している一方、PDFium .NETは上位プランで開発者数無制限の組織向けライセンスを提供している。 中規模チームの場合、IronPDFのProfessionalライセンスは最大10人の開発者をカバーし、PDFium.NETの同等のライセンスの約半額で利用できます。

上記の例では、 IronPDFはPDFium .NETと比較して少ないコード行数でPDFドキュメントを作成および変更します。たとえば、HTMLからPDFへの変換は3行で済みますが、PDFium.NETの座標ベースのアプローチでは同等の結果を得るために約20行かかります。 IronPDFは、HTML、URL、ASPXページなどの形式からPDFに変換するための複数の方法を提供します。 PDFium .NETは画像とテキストをベースとした合成に重点を置いており、開発者はページレイアウトをより細かく制御できる反面、一般的な変換作業にはより多くの手作業が必要になります。

Iron Softwareの製品ライブラリをそのうちの2つの価格で購入できるようになりました。 さらに、機能を試すための無料試用版があります。

ご注意PDFium.NETはその所有者の登録商標です。 このサイトはPDFium.NETと提携しておらず、承認または支援されていません。 すべての製品名、ロゴ、およびブランドは各所有者の所有物です。 比較は情報提供のみを目的としており、執筆時点で公開されている情報を反映しています。

よくある質問

C# で HTML を PDF に変換するにはどうすればいいですか?

IronPDFのRenderHtmlAsPdfメソッドを使用して、HTML文字列をPDFに変換できます。さらに、RenderHtmlFileAsPdfメソッドを使用して、HTMLファイルをPDFに変換できます。

PDF処理におけるIronPDFの主な機能は何ですか?

IronPDFは、開発者がHTML、CSS、およびJavaScriptを使用してPDFドキュメントを作成できるようにします。URLからPDFへの変換、テキストおよびグラフィック抽出、カスタムヘッダーとフッター、PDFの結合および分割、Adobe Acrobat Readerを使わずにPDFを印刷する機能を備えています。

IronPDFでPDFドキュメントにデジタル署名できますか?

はい、IronPDFはデジタル署名をサポートしており、暗号化署名でPDFドキュメントを保護できます。

IronPDFのインストールオプションにはどのようなものがありますか?

IronPDFはVisual Studio、Developer Command Prompt、NuGetパッケージのダウンロード、およびIronPdf.DLLライブラリを入手することでインストールできます。

IronPDFはどのようなライセンスおよび価格プランを提供していますか?

IronPDFは、シングルプロジェクト、シングルデベロッパー、エージェンシー、多国籍組織ライセンスを含む複数のライセンスオプションを提供しています。また、SaaSおよびOEM再配信ライセンスを提供しており、すべて30日間の返金保証があります。

IronPDFは開発効率をどのように向上させますか?

IronPDFは、PDFium.NETなどの他のライブラリと比較してPDFドキュメントの作成および修正に必要なコード行数を減らすように設計されており、開発者の生産性を向上させます。

IronPDFはクロスプラットフォームのPDF機能をサポートしていますか?

はい、IronPDFはさまざまなオペレーティングシステムとフレームワークをサポートしており、クロスプラットフォームのPDF機能において汎用性の高い選択肢となります。

他のPDFライブラリに対するIronPDFの利点は何ですか?

IronPDFは使いやすさ、HTMLからPDFへの変換のような強力な機能、および競争力のある価格設定を提供しており、他のPDFライブラリと比較して多くの開発者にとって好ましい選択肢です。

カーティス・チャウ
テクニカルライター

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

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

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね