產品比較

IronPDF 與 PDFium.NET 的比較

發佈 2023年1月25日
分享:

隨著科技的進步和互聯網的普及,數據大多以數位形式傳送和接收,主要是PDF檔案。

在C#中處理PDF文件對於開發人員來說在最近過去一段時間中一直是困難的。有許多情況下開發人員需要在他們的應用程式中加入PDF檢視和PDF生成功能。考慮到這一點,許多庫已經被開發出來以促進這些和類似的任務。

本文將比較兩個最受.NET和.NET Core開發人員歡迎的PDF庫。這兩個庫是:

  • The IronPDF .NET library
  • The PDFium.NET SDK library

IronPDF和PDFium.NET可以在.NET應用程式中創建、操作和列印PDF文件。問題是:應該使用哪個庫?通過閱讀本文,您將能夠自行決定。

首先,我們來看看這兩個庫所提供的功能,然後我們將進行具體比較。

PDFium.NET SDK 庫及其功能

PDFium.NET 用於創建、修改和查看 PDF 文件 (可攜式文件格式)它提供了一個高層次的 C#/VB.NET API 用於在網頁伺服器上動態創建 PDF,以及在現有的桌面或網頁應用中實現 另存為 PDF 功能。

PDFium.NET 的突出特色:

  • 從頭開始創建 PDF,或從一組掃描圖像創建 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 庫,您可以輕鬆地將 PDF 查看功能加入您的 .NET 專案中。

IronPDF 內建 Chromium 引擎,能夠非常輕鬆地將 HTML 轉換為 PDF。這不需要任何複雜的低階 API 來操作 PDF 檔案。它可以處理 HTML 原始檔如 HTML 文件、JavaScript 檔案和 ASPX 網頁。

IronPDF 可以使用自訂的頁首和頁尾、水印等來自訂 PDF。它也使得閱讀 PDF 文字和提取圖形變得輕而易舉。

IronPDF for .NET 的突出功能包括:

  • 使用 HTML4/5、CSS 和 JavaScript 創建 PDF 文件
  • 使用自訂的網路登錄憑證、用戶代理、代理伺服器、Cookie、HTTP 表頭和表單變數載入 URL
  • 程序化完成 HTML/PDF 表單欄位
  • 從 PDF 文件中提取文字和圖形
  • 使用新內容更新 PDF 頁面
  • 向 PDF 添加和自訂頁首和頁尾
  • 合併和分割 PDF 文件
  • 將 ASP.NET 網頁表單轉換為可打印 PDF
  • 將 HTML 文件/URL 轉換為 PDF
  • 打印 PDF 檔案而不使用 Adobe Acrobat Reader

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 Package
  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
  • 按下 Enter 鍵
  • 這將下載並安裝庫

1.3. 直接下載 NuGet 套件

IronPDF 也可以通過訪問 NuGet 網站直接下載。步驟如下:

1.4. 通過下載庫來安裝 IronPDF

您也可以 直接下載 IronPDF.DLL 文件 從網站。

IronPDF 與 PDFium.NET 的比較,圖4:從 IronPDF 網站下載 IronPDF 程式庫 DLL

在您的專案中引用IronPDF庫,請使用以下步驟:

  • 在Solution Explorer中右鍵點擊解決方案,選擇引用
  • 瀏覽IronPDF.dll庫
  • 點擊確定!

全都完成了! IronPDF 已下載並安裝完畢。我們現在將安裝 PDFium.NET SDK 庫。

2. PDFium.NET 安裝

我們可以使用 NuGet 套件管理器或下載 PDFium Windows 安裝程式來安裝 PDFium.net。

  • 在 Visual Studio 中像我們使用 IronPDF 一樣打開 NuGet 套件。
  • 搜尋 PDFium.NET.SDK。在您的當前項目中點擊安裝。
IronPDF 和 PDFium.NET 的比較,圖表 5:PDFium.NET 搜索
  • 您也可以使用套件管理員主控台來安裝。請按照 IronPDF 中提到的「使用開發者命令提示字元」步驟,並輸入以下命令:
    PM> Install-Package Pdfium.Net.SDK
  • 按 Enter 鍵。這將下載並安裝該庫。

3. 創建 PDF 文件

3.1. 使用 IronPDF

IronPDF 提供多種生成 PDF 文件的方法。讓我們來看看兩個重要的方法。

現有的 URL 轉換為 PDF

IronPDF 使將URL 轉換為 PDF 變得非常簡單 HTML轉PDF 文件使用現有網址。

請考慮以下的原始碼。

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
Pdf.SaveAs("url.pdf")
VB   C#

將 HTML 字串轉換成 PDF

以下的程式碼片段顯示了如何使用 HTML 字串來渲染 PDF 頁面。您可以使用簡單的 HTML,或將其與 CSS、圖像和 JavaScript 進行組合。

var Renderer = new IronPDF.ChromePdfRenderer();
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();
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()
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")
VB   C#

輸出如下:

IronPDF與PDFium.NET的比較,圖6:IronPDF從URL和HTML字串生成PDF

3.2. 使用 PDFium.NET

它可以使用圖像和文字對象即時生成 PDF。但是,它無法將 URL 或 HTML 字串轉換為 PDF 文件。

使用 PDFium.NET 生成 PDF 的代碼如下:

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

    // Step 2: Add new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is 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 standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        //image resolution is 300 DPI and location is 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 used 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 empty document
    // Return value: PdfDocument main class
    PdfCommon.Initialize();
    var doc = PdfDocument.CreateNew();  // Create a PDF document

    // Step 2: Add new page
    // Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
    //  The PDF unit of measure is 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 standard System.Drawing.Bitmap class
    using (PdfBitmap logo = PdfBitmap.FromFile(@"e:\site\assets\logo_square.png"))
    {
        PdfImageObject imageObject = PdfImageObject.Create(doc, logo, 0, 0);
        //image resolution is 300 DPI and location is 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 used 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 empty document
	' Return value: PdfDocument main class
	PdfCommon.Initialize()
	Dim doc = PdfDocument.CreateNew() ' Create a PDF document

	' Step 2: Add new page
	' Arguments: page width: 8.27", page height: 11.69", Unit of measure: inches
	'  The PDF unit of measure is 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 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)
		'image resolution is 300 DPI and location is 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 used 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
VB   C#

輸出如下:

IronPDF 與 PDFium.NET 的比較,圖 7:PDFium.NET 生成 PDF

如果我們比較 IronPDF 和 PDFium 專案的輸出結果,可以清楚地看到使用 HTML 繪製的 IronPDF 類庫所生成的輸出效果更好,甚至未縮放圖像大小。另一方面,PDFium.NET 生成的輸出效果與 IronPDF 類似,但僅在縮放圖像的情況下。如果我們從程式碼中跳過這一行:

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)
VB   C#

輸出結果將是:

IronPDF 與 PDFium.NET 的比較,圖 8:PDFium.NET 輸出無圖像縮放 PDF

4. 從多張圖片創建 PDF

4.1. 使用 IronPDF

合併兩個或多個 PDF 在 IronPDF 中非常簡單。使用 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();

var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
var merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

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();

var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
var merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

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()

Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)
Private merged = IronPDF.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

merged.SaveAs("Merged.PDF")
VB   C#

4.2. 使用 PDFium.NET

使用 PDFium.NET,您不僅可以將多個 PDF 文件合併為一個文件,還可以從源文件中選擇特定頁面,並將它們組合到一個 PDF 文件中。

以下代碼顯示了如何使用 ImportPages 方法來完成此操作。

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

    //Open and load a PDF document in which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // C# 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 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 document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
public void MergePDF()
{
    //Initialize the SDK library.
    PdfCommon.Initialize();

    //Open and load a PDF document in which other files will be merged 
    using (var mainDoc = PdfDocument.Load(@"c:\test001.pdf")) // C# 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 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 document
            mainDoc.Pages.ImportPages(
                doc,
                string.Format("1-{0}", doc.Pages.Count),
                mainDoc.Pages.Count
                );
        }
        mainDoc.Save(@"c:\ResultDocument.pdf", SaveFlags.NoIncremental);
    }
}
Public Sub MergePDF()
	'Initialize the SDK library.
	PdfCommon.Initialize()

	'Open and load a PDF document in which other files will be merged 
	Using mainDoc = PdfDocument.Load("c:\test001.pdf") ' C# Read source PDF File #1
		'Open one PDF document.
		Using doc = PdfDocument.Load("c:\doc1.pdf") 'Read PDF File #2
			'Import all pages from 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 document
			mainDoc.Pages.ImportPages(doc, String.Format("1-{0}", doc.Pages.Count), mainDoc.Pages.Count)
		End Using
		mainDoc.Save("c:\ResultDocument.pdf", SaveFlags.NoIncremental)
	End Using
End Sub
VB   C#

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")
VB   C#

PDFium.NET 無法數位簽署 PDF 文件。

6. 價格和授權

IronPDF 價格和授權

IronPDF 可免費用於開發簡單的應用程式,並可隨時獲得商業用途的授權。它提供單一專案授權、單一開發者授權、代理機構和跨國組織授權。它還提供 SaaS 和 OEM 再分配授權及支援。

所有 IronPDF 授權均附有 30 天退費保證,以及一年的軟體支援和升級。最重要的是,它是一個永久授權。 (一次性購買). Lite 套件的價格為 $749。IronPDF 產品絕對沒有任何重複費用。關於可用許可的詳細信息請參見 IronPDF 授權 頁面。

IronPDF 與 PDFium.NET 的比較,第 9 圖:IronPDF 許可證

PDFium.NET 價格和授權

PDFium.NET 提供永久授權。您可以使用您的註冊金鑰永久使用此受支持的 SDK 版本。但是,該金鑰僅適用於依據購買或續訂授權日期的某些特定 SDK 版本。您可以免費安裝任何新產品版本,只要該版本在購買之日或一年內發布。PDFium.NET 還提供三種不同的授權套餐:

  • 單專案授權設計單一開發者和小型團隊進行單個專案。起價 $720。
  • 組織授權適用於從事多個專案的開發團隊。
  • 單開發者授權適用於為多個客戶工作的單一開發者和自由工作者。

您可以訪問此 頁面 查看完整定價詳情。

結論

IronPDF 庫是一個易於使用的庫,用於創建 PDF 文件,無需任何複雜的 API。內建的 Chromium 引擎允許像素完美的 HTML 到 PDF 轉換,支持開放標準文檔類型,如 HTML、JS、CSS、JPG、PNG、GIF 和 SVG。

PDFium.NET SDK 是一個針對大多數常見需求而設計的 .NET 類庫,價格實惠。使用 PDFium.NET SDK,您的應用程序可以輕鬆顯示和操作 PDF 文檔。其特殊的 Page 物件編輯 API 使該庫特別強大。

如上所述,PDFium.NET 許可證有三個版本。單一項目許可證為單個開發人員提供了便利,三個開發人員的起價分別是 $720 和 $900。這比 IronPDF 相對便宜些,IronPDF 有一個起價為 $liteLicense 的 lite 版本。

IronPDF 提供無限許可證,只需 $2999。相比之下,PDFium.NET 的組織許可證為無限數量的開發人員提供,價格為 $4320。另一方面,IronPDF 提供的專業許可證起價為 $1499,可由 10 位開發人員使用。這個許可證大約是 PDFium.NET 等效許可證的價格一半,後者為 $2880。

在上述範例中,您已看到 IronPDF 使用比 PDFium.NET 少得多的代碼行來創建和修改 PDF 文件。這有助於減輕開發人員的工作量,讓他更有生產力。IronPDF 提供多種方法將幾乎任何格式轉換為 PDF。相比之下,PDFium.NET 僅提供將圖像和文本轉換為 PDF 的少數幾種方法。 購買所有Iron Software的產品庫 只需兩個的價格。此外,還有一個 免費試用 測試功能。

< 上一頁
iText7 從 PDF 中提取文本 vs IronPDF(代碼示例教程)
下一個 >
Telerik HTML 轉 PDF 生成器 與 IronPDF

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >