產品比較

SpirePDF C# HTML轉PDF教學與庫比較

發佈 2021年9月15日
分享:

在 C#.NET 中處理 PDF 時,使用 PDF 操作和生成庫比從頭開始完成我們的任務更為可取。 SpirePDFIronPDF 都提供在 .NET 和 .NET Core 中建立、編輯和列印 PDF 檔案的功能。它們也可以 讀取 PDF 文本、數據、表格和圖像範例非常熟練。

我們將在本文中考察這兩個庫。我們將展示每個 PDF 庫能夠做什麼,並通過代碼示例和逐步教程來比較它們的實現方式。儘管本文無法涵蓋這兩個 PDF 庫的所有功能,但它將解釋每個庫中最常見和最受歡迎的用法。這將使您能夠決定哪一個最適合您的專案。

IronPDF 是 HTML 到 PDF 的渲染庫 C#Java將您的網頁快速轉換為功能齊全且像素完美的PDF,只需少量的代碼行。詳細了解本文下方IronPDF for .NET C#的功能。了解更多關於IronPDF for Java的信息。 這裡.


概述

許多時候,Microsoft 隨著 Visual Studio 提供給我們的工具缺乏功能性或易用性。這就是第三方函式庫出現的地方。開發人員利用第三方函式庫的易用性,或者主要是它們的功能。

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

  • IronPDF
  • SpirePDF

了解 Spire.PDF

Spire.PDF for .NET 是一個 API,可以應用於創建、編輯、寫入、閱讀和處理 PDF 文件,而不需要 C#、VB.NET、ASP.NET、.NET Core、Xamarin 應用中的任何外部依賴項。使用 Spire.PDF,您可以從頭開始創建 PDF 文件,或僅通過 C#/VB.NET 處理現有的 PDF 文檔,而無需安裝 Adobe Acrobat。

了解 IronPDF

IronPDF 使 .NET 和 .NET Core 開發人員能夠輕鬆地在 C#、F# 和 VB.NET 中生成、合併、拆分、編輯和提取 PDF 內容,適用於 .NET Core 和 .NET Framework,並且可從 HTML、ASPX、CSS、JS 和圖像文件創建 PDF。

IronPDF 使用嵌入式的全 Chromium 基於網頁瀏覽器渲染器來 將 HTML 轉換為 PDF這允許開發人員從HTML、圖像和CSS生成PDF,並能在項目期間與設計師平行工作,緊密協作現有的網頁資產。

IronPDF專注於開發人員生產力。該庫將許多常見的複雜PDF編碼任務簡化為方便的C#方法,以提取文本和圖像、簽署PDF、用新的HTML編輯PDF等 - 開發人員無需研究PDF文檔標準即可理解如何達到最佳結果。

常見的庫功能

讓我們來看看它們的一些功能。

  • 從 HTML、圖片和 ASPX 文件生成 PDF 文件
  • 讀取 PDF 文字
  • 從 PDF 中提取數據和圖片
  • 合併 PDF 文件
  • 拆分 PDF 文件
  • 操作 PDF 文件
  • 添加數位簽名
  • 在簽名上添加時間戳
  • PDF 投資組合
  • PDF 文字提取
  • PDF 附件提取
  • PDF 圖片提取
  • PDF 合併
  • PDF 拆分
  • 更新 PDF 後設數據
  • PDF 圖像繪製
  • PDF 表格創建
  • 匯入數據
  • 將 PDF 文字轉換成文字、圖像、HTML 和 Excel

比較 IronPDF 和 Spire.PDF

IronPDFSpirePDF
使用 IronPDF 在 C# 中將 HTML 轉換為 PDFSpire.PDF for .NET 支援在 C# 中轉換 HTML
使用三行代碼將網址轉換為 PDF需要一個解決方法來嘗試從URL轉換
簡單的 HTML 字串轉 PDF可將 HTML 字串轉換為 PDF
圖標字體(Fontello、Bootstrap、FontAwesome) 14 核心字體
類型 1 字體
三類字體
CJK 字體
True Type Fonts
Unicode 支援
從 $749 授權授權證書起價 $599

價格比較

比較授權和定價

授權選項IronPDFSpirePDF
1名開發者,1個地點`$Lite License`$599
1 名開發者,無限項目,1 個地點$699$599
最多 10 位開發人員,不限專案數量,最多 10 個位置$1199$3070
不限開發者,不限項目,不限地點$1799無許可權
1 個 SaaS/OEM 產品,高達 50 位開發人員,無限位置$1599$8988
購買授權IronPDF 授權選項SpirePDF 授權選項

現在,讓代碼來說話!


步驟 1:安裝

首先,我們將創建一個專案來使用每個軟體庫測試不同的PDF功能。

建立一個ASP.NET專案

使用以下步驟創建一個ASP.NET網站:

  • 打開Visual Studio
  • 點擊"文件",然後選擇"新建項目"
  • 在"專案類型"列表框中,選擇Visual C#下的"Web"選項
  • 如下圖所示,選擇"ASP.NET Web 應用程式"

圖 1新專案

  • 點擊確定
  • 下一個畫面出現,從中選擇Web Forms,如下所示

圖2網頁表單

  • 點擊確定

2. 安裝 IronPDF 庫

在您的電腦上安裝 IronPDF 有兩種主要方法,如下所示:

  • NuGet
  • 下載 IronPDF 庫,稍後會進一步解釋。

基本上,有三種方法可以快速在您的 Visual Studio 專案中安裝 IronPDF 的 NuGet 套件,它們是:

  • 通過 Visual Studio 安裝
  • 使用開發者命令提示符
  • 從 NuGet 套件下載來源直接下載 NuGet

2.1. Visual Studio

NuGet 套件管理器用於下載和安裝各種可以包含在應用程式中以提升其功能的套件。其中一個套件是 IronPDF。若要下載和安裝 IronPDF NuGet 套件,請選擇專案選單,或在解決方案總管中右鍵點擊您的專案。下方顯示了各個步驟的截圖。

圖4右鍵點擊方案總管

瀏覽並安裝 IronPDF 套件如下所示。

圖 5安裝 IronPDF NuGet 套件

2.2. 開發人員命令提示字元

您也可以使用開發人員命令提示字元來安裝IronPDF NuGet套件。以下幾個步驟將說明如何操作。

  • 搜尋您的開發人員命令提示字元 – 通常在Visual Studio程式資料夾下找到
  • 輸入以下命令: PM > Install-Package IronPdf
  • 按下 Enter 鍵
  • 套件將被安裝。
  • 重新載入您的 Visual Studio 專案

2.3. 從 NuGet 下載 NuGet 套件

以下步驟可讓您直接從 NuGet 下載 IronPDF:

2.4. 通過下載庫來安裝 IronPDF

第二種安裝 IronPDF 的方式是直接下載,請點擊這裡 下載 IronPDF.dll.

圖6下載IronPDF資料庫

在您的專案中引用庫,請按照以下步驟操作:

  • 在解決方案資源管理器中右鍵單擊解決方案
  • 選擇參考
  • 瀏覽 IronPDF.dll 庫
  • 點擊確定

Spire PDF DLL 下載

在您的 Visual Studio 專案中安裝 SpirePDF NuGet 套件有三種方式,包括:

  • 通過 Visual Studio 安裝
  • 使用開發者命令提示符
  • 直接從 NuGet 套件下載 SpirePDF NuGet 網站

在 Visual Studio 中,搜索 SpirePDF 並安裝相關的套件,如下所示。 (步驟類似於之前所示。)

圖7SpirePDF

或者,在開發者命令提示字元中 (如前所示,輸入以下命令)

Install-Package Spire.PDF -Version 6.9.16

或者,直接從他們的網站下載:

https://www.e-iceblue.com/Download/download-pdf-for-net-now.html 您需要註冊一個帳戶。

如果一切順利,您應該已經準備好開始使用這些程式庫。


3. 從現有的 URL 建立 PDF

以下程式碼下載一個網頁並將其轉換為 PDF 文件。

3.1. 使用 IronPDF 從 URL 生成 PDF

以下程式碼使用 IronPDF 從 URL 生成 PDF —— 在本例中,URL 是 Wikipedia 上的 PDF 格式描述。客戶端標頭和頁腳也包含在內。

var Renderer = new IronPdf.ChromePdfRenderer();

// Create a PDF from an existing HTML
Renderer.RenderingOptions.MarginTop = 50;  //millimetres
Renderer.RenderingOptions.MarginBottom = 50;
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
Renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
    CenterText = "{pdf-title}",
    DrawDividerLine = true,
    FontSize = 16
};
Renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
    LeftText = "{date} {time}",
    RightText = "Page {page} of {total-pages}",
    DrawDividerLine = true,
    FontSize = 14
};
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 500; //milliseconds

using var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
PDF.SaveAs("wikipedia.pdf");
var Renderer = new IronPdf.ChromePdfRenderer();

// Create a PDF from an existing HTML
Renderer.RenderingOptions.MarginTop = 50;  //millimetres
Renderer.RenderingOptions.MarginBottom = 50;
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
Renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
    CenterText = "{pdf-title}",
    DrawDividerLine = true,
    FontSize = 16
};
Renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
    LeftText = "{date} {time}",
    RightText = "Page {page} of {total-pages}",
    DrawDividerLine = true,
    FontSize = 14
};
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 500; //milliseconds

using var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
PDF.SaveAs("wikipedia.pdf");
Dim Renderer = New IronPdf.ChromePdfRenderer()

' Create a PDF from an existing HTML
Renderer.RenderingOptions.MarginTop = 50 'millimetres
Renderer.RenderingOptions.MarginBottom = 50
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
Renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
	.CenterText = "{pdf-title}",
	.DrawDividerLine = True,
	.FontSize = 16
}
Renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
	.LeftText = "{date} {time}",
	.RightText = "Page {page} of {total-pages}",
	.DrawDividerLine = True,
	.FontSize = 14
}
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
Renderer.RenderingOptions.EnableJavaScript = True
Renderer.RenderingOptions.RenderDelay = 500 'milliseconds

Dim PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
PDF.SaveAs("wikipedia.pdf")
VB   C#

輸出文件包含 12 頁,並且非常出色地呈現了 JavaScript 和 CSS。結果如下所示:

圖9IronPDF Tiger 維基頁面

3.2. 使用 SpirePDF 生成 URL 的 PDF

從 URL 生成 PDF 似乎是一個簡單的轉換,如上所述。但由於多種因素,我們的工程團隊在使用 SpirePDF 時遇到了困難。這方面的文檔不多,作為開發人員,我們嘗試找到解決方法。

為了完成這個任務,我們認為你需要下載並安裝更多工具,這裡有引用的工具:

http://www.e-iceblue.com/Download/download-pdf-for-net-now.html 我們還沒有弄清楚。相反,這裡有一個主控台應用程式的程式碼片段,你可以在完成所有繁瑣的步驟後使用它來實現這一點:

//Create a pdf document.
PdfDocument doc = new PdfDocument();

PdfPageSettings setting = new PdfPageSettings();

setting.Size = new SizeF(1000, 1000);
setting.Margins = new Spire.Pdf.Graphics.PdfMargins(20);

PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
htmlLayoutFormat.IsWaiting = true;

String url = "https://www.wikipedia.org/";

Thread thread = new Thread(() =>
{ doc.LoadFromHTML(url, false, false, false, setting, htmlLayoutFormat); });
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//Save pdf file.
doc.SaveToFile("output-wiki.pdf");
doc.Close();
//Launching the Pdf file.
System.Diagnostics.Process.Start("output-wiki.pdf");
//Create a pdf document.
PdfDocument doc = new PdfDocument();

PdfPageSettings setting = new PdfPageSettings();

setting.Size = new SizeF(1000, 1000);
setting.Margins = new Spire.Pdf.Graphics.PdfMargins(20);

PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
htmlLayoutFormat.IsWaiting = true;

String url = "https://www.wikipedia.org/";

Thread thread = new Thread(() =>
{ doc.LoadFromHTML(url, false, false, false, setting, htmlLayoutFormat); });
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//Save pdf file.
doc.SaveToFile("output-wiki.pdf");
doc.Close();
//Launching the Pdf file.
System.Diagnostics.Process.Start("output-wiki.pdf");
'Create a pdf document.
Dim doc As New PdfDocument()

Dim setting As New PdfPageSettings()

setting.Size = New SizeF(1000, 1000)
setting.Margins = New Spire.Pdf.Graphics.PdfMargins(20)

Dim htmlLayoutFormat As New PdfHtmlLayoutFormat()
htmlLayoutFormat.IsWaiting = True

Dim url As String = "https://www.wikipedia.org/"

Dim thread As New Thread(Sub()
	doc.LoadFromHTML(url, False, False, False, setting, htmlLayoutFormat)
End Sub)
thread.SetApartmentState(ApartmentState.STA)
thread.Start()
thread.Join()
'Save pdf file.
doc.SaveToFile("output-wiki.pdf")
doc.Close()
'Launching the Pdf file.
System.Diagnostics.Process.Start("output-wiki.pdf")
VB   C#

3.3. 程式碼比較

IronPDF 只需要三行程式碼 (如果您在程式碼段落的底部包含 SaveAs 方法), 但除此之外只需要兩行:

var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
VB   C#

簡單明了。如您所見,程式碼並未使用 FileStream 或任何其他的 .NET 物件; RenderUrlAsPdf 方法在幕後處理了 .NET Framework 的所有複雜性。

另一方面,SpirePDF 則使將 URL 轉換為 PDF 的工作變得非常複雜,並且需要創新的變通方法。

IronPDF 與 Spire.PDF 之 URL 轉 PDF 比較

我們將比較 IronPDF 和 Spire.PDF 的轉換質量。

IronPDF

Spire.PDF

比較

Spire.PDF for .NET 與 IronPDF 一樣是一個用於操作 PDF 文件的 API,但它提供的功能和 IronPDF 相比較少,並且渲染器的質量不如 IronPDF。

比較兩個工具的最佳方法是進行並排比較。以上是 IronPDF 和 Spire.PDF 的輸出。

Bucket Admin panel 是一個網頁儀表板,用於顯示所有有用的信息。

轉換品質

兩個工具的渲染品質有明顯差異。IronPDF 生成的輸出是原始網頁的100%完全複製。然而,Spire.PDF創建的PDF只像是網站的框架而已。

CSS 和 JavaScript

IronPDF 使用並渲染了網頁的所有 CSS 和 JavaScript,看起來非常完美,但 Spire.PDF 幾乎漏掉了網站管理頁面的所有 CSS 和 JavaScript 文件。所有圖表都不見了——即使它們沒有丟失值,這些值也沒有被計算並在輸出中顯示。

顏色

Spire.PDF 渲染引擎在網站上無法準確渲染顏色;由 Spire.PDF 創建的輸出中只能看到少數顏色。

IronPDF 則可製作與網頁完全相同的副本,所有顏色都像素級完美呈現。

側邊導航欄

在 Spire.PDF 輸出文件中,無法識別側邊導航欄,看起來只有文字位於欄的位置。在 IronPDF 輸出文件中,側邊導航欄是完美的。

結論

C# API 的 IronPDF 和 Spire.PDF 在將 URL 轉換為 PDF 文件的耗時差不多,但 IronPDF 能準確渲染網站的所有內容,而 Spire.PDF 渲染引擎則無法創建高質量的 PDF。


4. 將 HTML 字串轉換為 PDF

以下範例使用了 IronPDF 和 SpirePDF 來創建一個包含提供的 HTML 字串的 PDF 文件。

4.1. 透過 IronPDF 從 HTML 字串生成 PDF

以下代碼使用 IronPDF 來生成包含 HTML 輸入的 PDF。

/**
PDF from HTML String
anchor-pdf-from-html-string-with-ironpdf
**/
private void HTMLString()
{
    var Renderer = new IronPdf.ChromePdfRenderer();
    using var PDF = Renderer.RenderHtmlAsPdf("<h1>Hi there IronPdf</h1>");

    Renderer.RenderingOptions.TextFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>" };

    var OutputPath = "ChromePdfRenderer.pdf";
    PDF.SaveAs(OutputPath);
    Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
}
/**
PDF from HTML String
anchor-pdf-from-html-string-with-ironpdf
**/
private void HTMLString()
{
    var Renderer = new IronPdf.ChromePdfRenderer();
    using var PDF = Renderer.RenderHtmlAsPdf("<h1>Hi there IronPdf</h1>");

    Renderer.RenderingOptions.TextFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>" };

    var OutputPath = "ChromePdfRenderer.pdf";
    PDF.SaveAs(OutputPath);
    Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
}
'''
'''PDF from HTML String
'''anchor-pdf-from-html-string-with-ironpdf
'''*
Private Sub HTMLString()
	Dim Renderer = New IronPdf.ChromePdfRenderer()
	Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Hi there IronPdf</h1>")

	Renderer.RenderingOptions.TextFooter = New HtmlHeaderFooter() With {.HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"}

	Dim OutputPath = "ChromePdfRenderer.pdf"
	PDF.SaveAs(OutputPath)
	Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
End Sub
VB   C#

4.2. 使用 SpirePDF 將 HTML 字串轉換成 PDF

以下程式碼使用 SpirePDF 來建立包含 HTML 文字的 PDF。

private void HTMLString()
{
    Document document = new Document();
    document.LoadFromFile("sample.htm", FileFormat.Html, XHTMLValidationType.None);

    //Save html to PDF.
    document.SaveToFile("Sample.pdf", FileFormat.PDF);
}
private void HTMLString()
{
    Document document = new Document();
    document.LoadFromFile("sample.htm", FileFormat.Html, XHTMLValidationType.None);

    //Save html to PDF.
    document.SaveToFile("Sample.pdf", FileFormat.PDF);
}
Private Sub HTMLString()
	Dim document As New Document()
	document.LoadFromFile("sample.htm", FileFormat.Html, XHTMLValidationType.None)

	'Save html to PDF.
	document.SaveToFile("Sample.pdf", FileFormat.PDF)
End Sub
VB   C#

4.3. 代碼比較

SpirePDF 似乎只能通過使用 LoadFromFile 方法加載 HTML 文件,然後使用 SaveToFile 調用將 HTML 文件輸出為 PDF。

IronPDF 使用 RenderHtmlAsPdf 將給定的 HTML 字串渲染為 PDF 格式。


5. 將 ASPX 頁面轉換為 PDF

以下的 IronPDF 和 SpirePDF 代碼將從 ASPX 頁面創建 PDF 文檔。

5.1. 使用 IronPDF 將 ASPX 轉換為 PDF

以下程式碼使用 IronPDF 從 ASPX 檔案建立 PDF 文件。

/**
ASPX to PDF
anchor-aspx-to-pdf-with-ironpdf
**/
protected void Page_Load(object sender, EventArgs e)
{

    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
/**
ASPX to PDF
anchor-aspx-to-pdf-with-ironpdf
**/
protected void Page_Load(object sender, EventArgs e)
{

    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
'''
'''ASPX to PDF
'''anchor-aspx-to-pdf-with-ironpdf
'''*
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
VB   C#

5.2. 使用 SpirePDF 將 ASPX 轉換為 PDF

以下程式碼將把 ASPX 文件轉換為 PDF。

protected void Page_Load(object sender, EventArgs e)
{
    using PdfDocument pdf = new PdfDocument();
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);
    this.RenderControl(htw);
    //string sourceCode = sw.ToString();
    string url=Request.Url.AbsoluteUri;
    Thread thread = new Thread(() =>
    {
        PdfPageSettings settings = new PdfPageSettings();
        PdfHtmlLayoutFormat format = new PdfHtmlLayoutFormat();
        pdf.LoadFromHTML(url, false, true, true, settings, format);
        //pdf.LoadFromHTML(Request.Url.AbsoluteUri, false, true, true);
    });
    pdf.SaveToHttpResponse("NameOfFile.pdf", Response, HttpReadType.Save);
}
protected void Page_Load(object sender, EventArgs e)
{
    using PdfDocument pdf = new PdfDocument();
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);
    this.RenderControl(htw);
    //string sourceCode = sw.ToString();
    string url=Request.Url.AbsoluteUri;
    Thread thread = new Thread(() =>
    {
        PdfPageSettings settings = new PdfPageSettings();
        PdfHtmlLayoutFormat format = new PdfHtmlLayoutFormat();
        pdf.LoadFromHTML(url, false, true, true, settings, format);
        //pdf.LoadFromHTML(Request.Url.AbsoluteUri, false, true, true);
    });
    pdf.SaveToHttpResponse("NameOfFile.pdf", Response, HttpReadType.Save);
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	Using pdf As New PdfDocument()
		Dim sw As New StringWriter()
		Dim htw As New HtmlTextWriter(sw)
		Me.RenderControl(htw)
		'string sourceCode = sw.ToString();
		Dim url As String=Request.Url.AbsoluteUri
		Dim thread As New Thread(Sub()
			Dim settings As New PdfPageSettings()
			Dim format As New PdfHtmlLayoutFormat()
			pdf.LoadFromHTML(url, False, True, True, settings, format)
			'pdf.LoadFromHTML(Request.Url.AbsoluteUri, false, true, true);
		End Sub)
		pdf.SaveToHttpResponse("NameOfFile.pdf", Response, HttpReadType.Save)
	End Using
End Sub
VB   C#

不過,需要注意的是:由於不支援Forms Authentication Membership,它有時可能會生成空白的PDF。


6. 將 XML 轉換為 PDF

以下程式碼將 XML 轉換為 PDF 文件。

6.1. 使用 IronPDF 將 XML 轉換為 PDF

/**
XML to PDF
anchor-xml-to-pdf-with-ironpdf
**/
private void XMLtoPDF(string XSLT, string XML)
{
    XslCompiledTransform transform = new XslCompiledTransform();
    using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))
    {
        transform.Load(reader);
    }

    StringWriter results = new StringWriter();
    using(XmlReader reader = XmlReader.Create(new StringReader(XML)))
    {
        transform.Transform(reader, null, results);
    }

    IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
    Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("XMLtoPDF.pdf");
}
/**
XML to PDF
anchor-xml-to-pdf-with-ironpdf
**/
private void XMLtoPDF(string XSLT, string XML)
{
    XslCompiledTransform transform = new XslCompiledTransform();
    using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))
    {
        transform.Load(reader);
    }

    StringWriter results = new StringWriter();
    using(XmlReader reader = XmlReader.Create(new StringReader(XML)))
    {
        transform.Transform(reader, null, results);
    }

    IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
    Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("XMLtoPDF.pdf");
}
'''
'''XML to PDF
'''anchor-xml-to-pdf-with-ironpdf
'''*
Private Sub XMLtoPDF(ByVal XSLT As String, ByVal XML As String)
	Dim transform As New XslCompiledTransform()
	Using reader As XmlReader = XmlReader.Create(New StringReader(XSLT))
		transform.Load(reader)
	End Using

	Dim results As New StringWriter()
	Using reader As XmlReader = XmlReader.Create(New StringReader(XML))
		transform.Transform(reader, Nothing, results)
	End Using

	Dim Renderer As New IronPdf.ChromePdfRenderer()
	Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("XMLtoPDF.pdf")
End Sub
VB   C#

7. 許可和支援

價格很可能是決定購買哪種產品的首要因素。在表格中,我將快速概述 IronPDF 和 SpirePDF 的各種選項。

查看價格比較表

7.1. 支援和更新

接下來,我們來比較一下 Iron Software 和 SpirePDF 的支援和更新。

IronPDF 支持與更新

  • Iron Software 提供退款保證。
  • IronPDF 在開發使用時是免費的,並且可以使用免費試用許可金鑰來部署。
  • Iron Software 提供一年的支持和每月版本更新,並且每個許可都免費附贈。
  • 擴展選項包括:

    • 年度訂閱
  • 4 年套裝,享有 40% 折扣
  • Iron Software 提供支持通過他們的 開發團隊由產品開發工程師回答票證。
  • 可通過支持提出產品功能請求。
  • 初始許可證購買提供當前版本的永久許可證。一次性購買,終身保障。
  • 產品更新覆蓋率允許在覆蓋有效時隨時更新到最新版本。

SpirePDF 支援與更新

以下支援服務可供使用:

  • 14天退款保證
  • 30天免費試用
  • 一年免費更新和免費優先技術支援
  • 為OEM用戶提供免費定制服務

快速指南

探索 IronPDF API 參考文獻

探索 IronPDF C# 庫的 API 參考,包括 IronPDF 的所有功能、類別、方法字段、命名空間和枚舉的詳細資料。

查看 API 參考文件
< 上一頁
ActivePDF DocConverter 教程及與 IronPDF 的比較
下一個 >
PDFSharp HTML 轉換PDF範例與教程比較

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

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