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

IronPDFとPDFium.NETの比較

技術の進歩とインターネット使用量の増加に伴い、データは主にデジタル形式で送受信され、主にPDFファイルで行われています。

C#でPDFドキュメントを扱うことは、最近の開発者には困難なことでした。開発者がアプリケーションにPDF表示およびPDF生成機能を組み込む必要があるシナリオは多くあります。 これを念頭に置いて、これらおよび類似のタスクを容易にするために、多くのライブラリが開発されています。

この記事では、.NETおよび.NET Core開発者に最も人気のある2つのPDFライブラリを比較していきます。 これらの2つのライブラリは次の通りです。

  • IronPDF .NETライブラリ
  • PDFium.NET SDKライブラリ

IronPDFとPDFium.NETは、.NETアプリケーションでPDFの作成、操作、および印刷を行うことができます。 どのライブラリを使用するべきかという疑問が生じます。 この記事を通じて、自分で判断できるようになります。

まず、これら2つのライブラリが提供するものを見てから、比較に進みます。

PDFium.NET SDKライブラリとその機能

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エンジンが組み込まれており、HTMLを非常に簡単にPDFに変換することができます。 これは、PDFファイルを操作するための複雑な低レベルAPIを必要としません。 HTMLドキュメント、JavaScriptファイル、ASPXウェブページなどのHTMLソースファイルを扱うことができます。

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

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

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

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

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

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

1.1. Visual Studioを使用する

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

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図1: ツールメニューを使用してNuGetパッケージマネージャーにアクセス
class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図2: ソリューションエクスプローラーを使用してNuGetパッケージマネージャーにアクセス

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

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図3: NuGetパッケージマネージャーを使用してIronPDFライブラリをインストール

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

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

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

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

NuGet IronPDF Packageを訪れて直接IronPDFをダウンロードすることもできます。 手順は次の通りです:

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

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

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

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図4: IronPDFウェブサイトからIronPDFライブラリDLLをダウンロード

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

  • ソリューションエクスプローラーでソリューションを右クリックし、参照を選択 IronPDFはインストールされ準備が整いました。
  • OKをクリック!

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

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

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

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

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

3.1. IronPDFを使用

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

既存のURLをPDFに変換

IronPDFはIronPDFのURLレンダリングを使用して既存のURLをHTMLから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");
Dim Renderer = New IronPDF.ChromePdfRenderer()

' Render HTML as a PDF
Dim 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
Dim AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='logo_square.png'>", "e:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

出力は以下の通りです。

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図6: URLおよびHTML文字列からIronPDFでPDFを生成

3.2. PDFium.NETを使用

画像やテキストオブジェクトを使用して動的にPDFドキュメントを生成することができます。 しかし、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

出力は以下の通りです。

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図7: PDFium.NETでPDFを生成

IronPDFの出力をPDFiumプロジェクトと比べると、IronPDFのクラスライブラリを基にした出力は、画像のサイズをスケーリングすることなくHTMLレンダリングを行い、より良い結果をもたらします。一方、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

出力は以下のようになります:

class="content-img-align-center">
class="center-image-wrapper"> IronPDFとPDFium.NETの比較、図8: PDFium.NETの画像スケーリングなしの出力PDF

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

4.1. IronPDFを使用

IronPDFでは複数のPDFをマージすることは簡単です。 Mergeメソッドを使用して、カンマで区切られた各ファイルを複数の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

Private 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>"

Private 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>"

Private Renderer = New IronPDF.ChromePdfRenderer()

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

' Merge the documents into one PDF
Private 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文書にデジタル署名することです。 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 = 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はPDF文書にデジタル署名を行う機能を持ちません。

6. 価格とライセンス

IronPDFの価格とライセンス

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

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

IronPDFとPDFium.NETの比較、図9: IronPDFライセンス

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

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

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

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

結論

IronPDFライブラリは、複雑なAPIなしでPDF文書を作成するための使いやすいライブラリです。組み込みのクロムエンジンにより、HTML、JS、CSS、JPG、PNG、GIF、およびSVGといったオープン標準のドキュメントタイプを使用したピクセルパーフェクトのHTMLからPDFへの変換が可能になります。

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

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

IronPDFは競争力のある価格で無制限ライセンスを提供しています。対照的に、PDFium.NETは無制限の開発者数のための組織ライセンスをプレミアム価格で提供しています。一方で、IronPDFは10人の開発者が使用できるプロフェッショナルライセンスを提供し、PDFium.NETの10人の開発者向け同等ライセンスの約半額です。

上記の例では、IronPDFがどのようにしてPDF文書をより少ないコード行数で作成し変更するかを見ました。 これにより、開発者の作業量が軽減され、より生産的になることができます。IronPDFはほぼあらゆる形式からPDFへの変換を行うための複数の方法を提供します。 対照的に、PDFium.NETは画像やテキストからのPDFへの変換など、いくつかのメソッドのみを提供します。

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
テクニカルライター

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

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