產品比較

Jsreport和IronPDF的比較

發佈 2023年12月12日
分享:

1. 介紹

在數位時代,PDF(可攜式文件格式)已成為日常必需品,對於以可靠和一致的格式存儲和共享信息至關重要。 無論是將數據屬性轉換成整齊格式化的 PDF 還是製作專業發票,開發人員通常選擇像 IronPDF 和本地 JSReport Studio 這樣功能強大的 C# 客戶端庫,而不是用於伺服器開發的 Phantom PDF。

IronPDF提供在 .NET 框架中將 HTML 轉換為 PDF 的最佳性能,而 JSReport SDK 則提供動態報告解決方案,重點在於使用本地 JSReport 伺服器和配置或配置文件的靈活性和定制化。這兩個庫都帶來了獨特的解決方案,滿足了開發人員在 PDF 生成和操作領域的不同需求。

2. 使用 JSReport Server .NET

JSReport SDK.NET 是一個針對 .NET 應用程式的先進報告解決方案,特別針對 ASP.NET Core 環境進行最佳化。 它的獨特之處在於能夠直接從 HTML 和 JavaScript 將視圖輸出轉換為多種格式,例如 PDF、Excel、DOCX 和 CSV。 此功能是透過使用報告伺服器利用 ASP.NET MVC 引擎如 Razor 來生成報告而實現的。

JSReport .NET 提供了一套完整的預設本地擴展,包括排程、模板版本控制、子報告、用戶管理、導入/導出模板和備份,增強其在各種業務場景中的多樣性和適用性。 它還支援廣泛的 API,包括 REST API、CLI 或 SDK,使得報告渲染可以幾乎在任何地方進行。

2.1 主要功能

2.1.1 ASP.NET Core 整合

JSReport SDK 提供專為 ASP.NET Core 應用程式設計的 jsreport.AspNetCore NuGet 套件。 這包括中介軟體過濾器,能夠將 MVC 視圖輸出轉換為所需的格式,使用視圖作為 HTML 生成器,並使用 JSReport 伺服器作為輸出轉換器。

2.1.2 靈活設置

設定包括使用像 jsreport.AspNetCorejsreport.Localjsreport.Binary 等套件。 這些輔助類別透過 jsreport.Client 輔助連接至本地 JSReport 實例或遠程實例。

2.1.3 輸出轉換

開發人員可以輕鬆指定 JSReport 配方以進行輸出轉換。 例如,使用 MiddlewareFilterChromePdf 方法,一個 ASP.NET 過濾器會捕獲視圖的渲染結果並將其轉換為 PDF 格式。 此功能對於基於ASP.NET的應用程式特別有用。

2.1.4 遠程實例相容性

JSReport .NET 無縫整合遠端 JSReport 實例。 這在協作的 Docker 環境中特別有利,因為 JSReport 在獨立的容器中運行,而不是在一個容器中。 這樣的整合有助於使用像 Docker-compose 這樣的工具協調 JSReport 和 .NET Core 應用程式。

2.1.5 高級回應處理

OnAfterRender 鉤子允許操作響應標頭及其他屬性。 此掛勾也可以用來將輸出儲存到檔案,提供在處理報告生成過程中的回應時的靈活性。

2.1.6 自訂標頭

JSReport .NET 可透過部分視圖指定自訂 PDF 頁首。 這些標頭可以在運行時與主要 PDF 內容一起渲染,為報告生成提供額外的自訂選項。

2.1.7 無需 MVC 視圖的渲染

該框架支持從原始 HTML 渲染報告,而不僅僅是 MVC 視圖。 此功能允許在報告生成過程中有更大的靈活性,讓開發人員可以直接渲染 HTML 內容。

3. IronPDF

IronPDF 是一個有用的 .NET 應用程式庫,旨在簡化 PDF 的處理。 其主要功能之一是將 HTML 轉換為 PDF適合需要從網頁生成報告或發票的情況。 此外,無論您是在伺服器端還是客戶端工作,它的速度都相當快,使其成為商業項目和個人使用的絕佳資料庫。

IronPDF 適用於許多不同的 .NET 環境,例如 ASP.NET、MVC、Windows Forms 和 WPF。 它可順利整合於.NET Core和Framework中。 它也適用於 Azure 和其他雲端服務,這對於基於雲的應用程式開發來說是一大優勢。

IronPDF的3.1主要功能

3.1.1 HTML 至 PDF 轉換

IronPDF 非常適合將 HTML 轉換成 PDF 文件。 它能完美處理 HTML、CSS、JavaScript 和圖片,確保您的網頁內容在最終的 PDF 中看起來一如所願。 轉換保留原始 HTML 的佈局和樣式。

3.1.2 ASP.NET 整合

與 ASP.NET 的整合是無縫的,讓您不需要大量程式碼即可將 ASPX 頁面轉換為 PDF。 這對於從現有的網頁應用程式製作 PDF 非常方便。

3.1.3 編輯和操作

IronPDF讓您編輯現有的 PDF 文件,例如添加文字、圖片和頁面或合併多個 PDF。 編輯功能使用方便,因此您不需要是 PDF 專家即可使用。 您也可以添加註解, 附件, 大綱和書籤到您的 PDF。

3.1.4 表單填寫與提取

IronPDF 支援填寫和擷取資料從PDF 表單,這對處理表單的應用程式來說至關重要。 IronPDF 讓管理表單數據的整個過程更加順暢。 它也可以處理不同類型的 PDF 表單,增加其靈活性。

3.1.5 安全功能

IronPDF 提供安全功能,如密碼保護和在 PDF 文件上設定權限,這對於保護敏感資訊的安全至關重要。 它還具有加密和解密功能,增加了另一層的保護。您的 PDF 安全性.

3.1.6 可自訂渲染

您可以對 PDF 的呈現方式進行多種控制,例如設定自訂頁首和頁尾調整頁邊距,並選擇特定的 HTML 部分進行轉換。 這種程度的自訂確保您的 PDF 檔案以您理想的方式呈現。

3.1.7 高級 PDF 功能

IronPDF 支援PDF/A 合規性數位簽章. 它還具有光學字符識別 (OCR) 功能,這意味著它可以將掃描的文件和圖像轉換為可搜尋和編輯的 PDF。 這些功能非常適合更複雜的項目。

3.1.8 簡易部署

設置 IronPDF 非常簡單,不需要額外的安裝或依賴。 它非常輕量,不會降低應用程式的性能。 此外,它會不斷更新,以緊跟最新的 .NET 技術,為您提供一個不會過時的 PDF 解決方案。

4. 建立 .NET 專案

4.1 開始新專案

打開 Visual Studio,然後點擊「建立新專案」按鈕開始一個新專案。

Jsreport 和 IronPDF 比較:圖 1 - 建立項目

然後,選擇「控制台應用程式」、「.NET Core 應用程式」或其他選項。

Jsreport 與 IronPDF 的比較:圖 2 - 獨立專案 - 控制台應用程式

4.2 設置專案

您需要為您的專案命名。 找到專案名稱的文字框,輸入您想要的名稱。 此外,選擇一個位置來儲存您的專案,選取您希望儲存專案的路徑即可。 輸入這些詳細資料後,點擊“建立”按鈕以繼續。

Jsreport與IronPDF比較:圖表 3 - 專案設置

4.3 選擇 .NET Framework

下一步是為您的專案選擇所需的 .NET 框架。 這個選擇取決於您項目的需求和相容性。 在此之後,點擊「建立」按鈕。

Jsreport 與 IronPDF 之間的比較:圖表 4 - 選擇框架

安裝IronPDF庫

5.1 使用 NuGet 套件管理器

要使用 Visual Studio NuGet 程式包管理器安裝 IronPDF,請遵循以下步驟:

  • 在 Visual Studio 中打開您的專案。
  • 點擊「工具」選單,選擇「NuGet 套件管理員」,然後選擇「管理方案的 NuGet 套件」。

    Jsreport和IronPDF之比較:圖5 - NuGet套件管理器

  • 在 NuGet 封裝管理員中,點擊「瀏覽」標籤。
  • 搜尋 "IronPDF"。
  • 當您找到 IronPDF 套件後,選擇它並點擊「安裝」。

    Jsreport和IronPDF之間的比較:圖6 - 安裝IronPDF

  • 按照提示完成安裝。

5.2 使用 Visual Studio 命令行

如果您更喜歡使用命令列,您可以在Visual Studio中安裝IronPDF,如下所示:

  • 打開 Visual Studio。
  • 移動到「工具」選單,將滑鼠懸停在「NuGet 套件管理員」上,然後從側邊選單中選擇「套件管理員主控台」。
  • 在控制台中輸入以下命令:
    Install-Package IronPdf
    Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
VB   C#
  • 按 Enter 鍵執行命令並等待安裝完成。

    Jsreport 與 IronPDF 的比較:圖 7 - IronPDF 安裝

5.3 從 NuGet 網頁直接下載

IronPDF 可以直接從 NuGet 網站下載:

  • 造訪 NuGet 官方網站。
  • 使用搜索欄尋找IronPDF套件。

    Jsreport與IronPDF之間的比較:圖8 - IronPDF套件

  • IronPDF套件頁面,您將看到直接下載套件的選項。
  • 下載 .nupkg 檔案並手動將其添加到您的專案中。

    Jsreport與IronPDF之比較:圖9 - 下載 .nupkg

6. 安裝JSReport

6.1 在 Visual Studio 中使用 NuGet 套件管理器

要使用 Visual Studio 的 NuGet 套件管理器執行 JSReport,請前往「工具」選單並選擇「管理 NuGet 套件」。 這將開啟 NuGet 包管理器介面。 在 NuGet 封裝管理員中,您可以根據專案需求搜尋 jsreport.Localjsreport.Binary

Jsreport與IronPDF之間的比較:圖10 - jsreport.Binary

這些是將JSReport集成到.NET應用程式中的主要套件。 找到合適的套件後,點擊「安裝」將其添加到您的專案中。 此過程將自動下載並在您的項目中引用該套件,讓其準備好使用。

6.2 使用 NuGet 套件管理員主控台

或者,您可以使用 Visual Studio 中的 NuGet 套件管理器主控台安裝 JSReport。 為此,從“工具”選單中選擇“NuGet 封裝管理員”,然後選擇“封裝管理員主控台”以開啟 NuGet 封裝管理員主控台。

Jsreport和IronPDF之間的比較:圖11 - 套件管理控制台

在控制台中,您需要運行特定命令來安裝 JSReport 套件。 如果您想安裝 jsreport.Local 套件,您將使用指令 Install-Package jsreport.Local。 對於 jsreport.Binary 封裝,指令將是 Install-Package jsreport.Binary。 在套件管理器控制台中執行這些命令將下載並將相應的 JSReport 套件添加到您的專案中。

Jsreport 和 IronPDF 的比較:圖 12 - 安裝 jsreport.Local

7. 比較 IronPDF 和 JSReport 中的 HTML 到 PDF 功能

7.1 IronPDF 的 HTML 到 PDF 轉換

IronPDF 是用於 HTML 到 PDF 轉換的最佳庫。 它因易於使用和高效能而脫穎而出,使其成為開發人員的首選。 它支持進階功能,如 CSS 渲染、JavaScript 執行,以及自訂的頁首和頁尾,進一步增強了從 HTML 源生成高品質 PDF 的能力。 IronPDF 提供三種將 HTML 轉換為 PDF 的方法:

  1. 將 HTML 字串轉換為 PDF

  2. HTML 檔案轉 PDF

  3. URL 轉 PDF

    讓我們逐一討論這些功能。

7.1.1 HTML 字串轉 PDF

此功能允許您直接從字串中轉換 HTML 內容。 這在 HTML 內容在您的應用程式中動態生成或修改時特別有用。 您可以將 HTML 字串傳遞給 IronPDF,它會將其渲染成 PDF。

using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
            <html>
                <head>
                    <title>Example HTML</title>
                </head>
                <body>
                    <h1>Hello, World!</h1>
                    <p>This is an HTML string converted to PDF using IronPDF.</p>
                </body>
            </html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
            <html>
                <head>
                    <title>Example HTML</title>
                </head>
                <body>
                    <h1>Hello, World!</h1>
                    <p>This is an HTML string converted to PDF using IronPDF.</p>
                </body>
            </html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim htmlString As String = "
            <html>
                <head>
                    <title>Example HTML</title>
                </head>
                <body>
                    <h1>Hello, World!</h1>
                    <p>This is an HTML string converted to PDF using IronPDF.</p>
                </body>
            </html>"
' Convert HTML string to PDF
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlString)
pdfDocument.SaveAs("HtmlStringToPdf.pdf")
VB   C#

這是輸出 PDF 檔案:

Jsreport和IronPDF之間的比較:圖13 - 輸出

HTML 文件轉 PDF

使用此方法,您可以將現有的 HTML 文件轉換為 PDF。 當您有需要以PDF格式呈現或分發的靜態HTML文件時,這會很有用。 您需要提供 HTML 文件的路徑,IronPDF 會處理轉換工作。

using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html")
pdfDocument.SaveAs("Invoice.pdf")
VB   C#

這是發票 HTML 的輸出 PDF 文件:

1

7.1.2 URL 轉 PDF

此功能可透過使用其 URL 將整個網頁轉換為 PDF。 這對於捕捉網頁當前的狀態(包括樣式、圖像和其他資源)非常方便。 IronPDF會從給定的URL加載網頁並將其轉換成PDF文件,盡可能複製佈局和內容。

using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2
'https url
Dim pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/")
pdfDocument.SaveAs("UrlToPdf.pdf")
VB   C#

以下是使用上述邏輯生成的 Microsoft .NET 網站的 PDF。

Jsreport與IronPDF的比較:圖14 - Microsoft HTTP網站PDF

7.2 JSReport C# HTML 到 PDF 轉換

在 JSReport 中將 HTML 轉換為 PDF 的過程涉及若干步驟,通常包括設置 JSReport 伺服器或使用其線上 API。 在 C# 中的典型實現可能如下所示:

using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
    var report = new LocalReporting()
                 .UseBinary(JsReportBinary.GetBinary())
                 .AsUtility()
                 .Create();
    var reportResult = await report.RenderAsync(new RenderRequest()
    {
        Template = new Template()
        {
            Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
            Engine = Engine.None,
            Recipe = Recipe.ChromePdf
        },
        Options = new RenderOptions()
        {
            Debug = new DebugOptions() { Preview = true }
        }
    });
    var stream = new MemoryStream();
    reportResult.Content.CopyTo(stream);
    stream.Position = 0;
    return File(stream, "application/pdf", "Report.pdf");
}
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
    var report = new LocalReporting()
                 .UseBinary(JsReportBinary.GetBinary())
                 .AsUtility()
                 .Create();
    var reportResult = await report.RenderAsync(new RenderRequest()
    {
        Template = new Template()
        {
            Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
            Engine = Engine.None,
            Recipe = Recipe.ChromePdf
        },
        Options = new RenderOptions()
        {
            Debug = new DebugOptions() { Preview = true }
        }
    });
    var stream = new MemoryStream();
    reportResult.Content.CopyTo(stream);
    stream.Position = 0;
    return File(stream, "application/pdf", "Report.pdf");
}
Imports JsReport.AspNetCore
Imports JsReport.Types
Imports System.Threading.Tasks
Public Async Function GeneratePdf() As Task(Of IActionResult)
	Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).AsUtility().Create()
	Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
		.Template = New Template() With {
			.Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
			.Engine = Engine.None,
			.Recipe = Recipe.ChromePdf
		},
		.Options = New RenderOptions() With {
			.Debug = New DebugOptions() With {.Preview = True}
		}
	})
	Dim stream = New MemoryStream()
	reportResult.Content.CopyTo(stream)
	stream.Position = 0
	Return File(stream, "application/pdf", "Report.pdf")
End Function
VB   C#

你還可以從以下找到 JSReport .NET 的範例連結. 這是發票 PDF 報告的範例輸出。

Jsreport 與 IronPDF 之間的比較:圖15 - 發票輸出 PDF

8. 彈性及高級功能

8.1 IronPDF 的高級功能和自訂選項

IronPDF 以其先進的功能和高度的自訂性而脫穎而出,滿足各種 PDF 操作需求。 主要高級功能包括:

PDF/A 合規:它支援 PDF/A 格式,這對於長期保存和遵循行業標準是至關重要的。 這種合規性對於法律、金融和政府部門尤其重要,因為這些領域對於文件的長期完整性要求極為嚴格。

using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
Imports IronPdf
' Create a PdfDocument object or open any PDF File
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3)
VB   C#

編輯、合併和拆分PDF:IronPDF允許編輯現有的PDF、合併多個PDF為一,以及將PDF拆分為單獨的文件。 此功能在需要將大型文件拆分以便更輕鬆分發,或需要組合不同文件的各個部分時特別有用。

安全功能:它包括強大的安全功能,如密碼保護、加密和設置用戶權限的能力。 IronPDF 支持 PDF 文件的加密,增加了一層安全保護,防止內容被更改或複製。

using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
Imports IronPdf
' Open a PDF File
Private pdfDoc = PdfDocument.FromFile("invoice.pdf")
' The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption()
pdfDoc.SecuritySettings.AllowUserAnnotations = False
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = False
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdfDoc.SecuritySettings.AllowUserFormData = False
' Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen" ' password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare" ' password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf")
VB   C#

頁首和頁尾控制:開發人員可以輕鬆地為他們的 PDF 文件添加自訂頁首和頁尾,這是對於專業外觀的報告、發票和其他商務文件至關重要的功能。 這包括添加頁碼、日期和自訂文字的功能。

PDF 轉換為圖像:IronPDF 允許將 PDF 頁面轉換為圖像。 此功能特別適用於需要在網路應用程式中將 PDF 內容顯示為圖像或用於生成縮圖的情境。

using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing
Private pdf = PdfDocument.FromFile("Example.pdf")
' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")
' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)
' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
VB   C#

8.2 JSReport .NET 高級功能和可擴充性

JSReport .NET 以其先進的功能和可擴展性而聞名,使其成為生成報告的多功能工具。 其主要功能包括:

動態報告生成:支持多種模板引擎,包括 Handlebars 和 EJS,方便進行複雜且靈活的報告設計。 這種多引擎兼容性允許各種設計可能性,適合不同的需求和報告創建的複雜性。

var report = new LocalReporting()
    .UseBinary(JsReportBinary.GetBinary())
    .RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
    .KillRunningJsReportProcesses()
    .Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
    .AsUtility()
    .Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
    Template = new Template()
    {
        Content = "{{{message}}}",
        Engine = Engine.Handlebars,
        Recipe = Recipe.ChromePdf
    },
    Data = new
    {
        message = "PDF Generation with JSReport .NET"
    }
});
var report = new LocalReporting()
    .UseBinary(JsReportBinary.GetBinary())
    .RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
    .KillRunningJsReportProcesses()
    .Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
    .AsUtility()
    .Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
    Template = new Template()
    {
        Content = "{{{message}}}",
        Engine = Engine.Handlebars,
        Recipe = Recipe.ChromePdf
    },
    Data = new
    {
        message = "PDF Generation with JSReport .NET"
    }
});
Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport")).KillRunningJsReportProcesses().Configure(Function(cfg) cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory()).AsUtility().Create()
Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
	.Template = New Template() With {
		.Content = "{{{message}}}",
		.Engine = Engine.Handlebars,
		.Recipe = Recipe.ChromePdf
	},
	.Data = New With {Key .message = "PDF Generation with JSReport .NET"}
})
VB   C#

模板引擎:JSReport .NET 提供排程和自動化功能以進行報告生成,非常適合例行報告需求,如每日或每月的摘要。 此功能確保報告能及時交付,並可與業務工作流程整合以實現事件觸發的報告生成。

自訂腳本的可擴展性:JSReport C# 允許通過自訂腳本擴展其功能,增強例如自訂資料處理或特殊格式化之類的功能。 這種擴充性對於創建符合特定業務邏輯和數據處理需求的報告至關重要。

9. 支援

9.1 IronPDF 文件品質與可用性

IronPDF 的文檔資料全面且使用者友好,適合初學者和有經驗的開發人員。 它包括詳細的指南、API 參考以及大量的代碼範例,使開發人員更容易理解和實現該庫在多種語言(如 C# 和 Node)中的功能。

文件結構良好並經常更新,以反映最新的功能和最佳實踐。 此外,IronPDF 的網站提供快速入門指南和常見問題解答,這對於想要在 .NET 環境中進行 PDF 操作的新手而言特別有幫助。

IronPDF 也提供線上遊樂場,讓您可以在線試用 IronPDF 功能,而無需下載其代碼。 使用以下內容進行探索連結.

9.1.1 支援選項

IronPDF 提供多種支持選項,包括專門的支持團隊來處理查詢和技術問題。 他們提供電子郵件支援,並在開發者論壇中積極活動,提供解決方案和建議。您也可以使用網站上的即時支援選項聯繫即時支援代理。

9.2 JSReport .NET 文件質量和可用性

JSReport .NET 以其廣泛且維護良好的文檔為傲。 文件涵蓋的主題範圍廣泛,從基本設置到高級使用情境,並附有代碼片段和實施範例。 它組織得很有條理,便於導航和查找相關資訊。 線上資源還包括全面的 API 參考,確保開發者能夠訪問有關工具功能的詳細信息。

支持選項 9.2.1

在支援方面,JSReport .NET 提供多種選擇。 他們有一個專門的支援團隊,可以通過電子郵件聯繫,並在 GitHub 上保持活躍,提供舉報問題和功能請求的平台。

10. 授權模式

10.1 IronPDF 的許可證

Jsreport 和 IronPDF 之間的比較:圖 16 - 授權

IronPDF 提供三種獨特的定價選項,滿足不同使用規模和預算需求:

Lite Edition:定價為 $749,這是一項用於雲部署的一次性費用。 它專為較小的項目或剛開始進行 PDF 處理的團隊設計。

專業版:價格為1,499美元,也是用於雲端的一次性費用,此版本適合需要更高級功能和能力的專業開發人員。

無限版:最全面的套裝,價格為一次性費用$2,999,用於雲端部署。 它非常適合大型企業使用,提供廣泛的功能且無使用限制。

10.2 JSReport .NET 授權

JSReport 與 IronPDF 的比較:圖 17 - JSReport 授權

JSReport .NET 提供靈活的授權選項,包括訂閱制和永久授權:

免費授權:此授權提供一個功能完整的實例,限制最多可使用5個報表模板。 它不需要授權密鑰,適合小型專案或評估用途。

企業訂閱:價格為每年 $395,此方案提供一個功能齊全的單一 JSReport 實例,沒有任何限制,並包含更新。 它非常適合需要強大報告解決方案的個體企業。

企業規模訂閱:每年售價 $1,295,此方案最適合大規模部署,提供一個有效於無限數量實例的單一授權密鑰。 此方案包括更新且免版稅,非常適合運行多個實例的組織,或者作為另一產品的一部分部署給多個客戶。

11. 結論

總結來說,儘管IronPDF和JSReport .NET在各自的領域中都很有價值,但IronPDF因其全面的PDF處理能力而稍佔優勢。 在 PDF/A 合規性、高級編輯和安全功能等方面表現出色,使其成為在 .NET 環境中進行詳細 PDF 處理的多功能工具。 JSReport .NET 憑藉其在動態報告生成和模板化方面的優勢,非常適合以報告為中心的任務。 然而,對於需要詳細和多樣化 PDF 處理和操作的大多數情況,IronPDF 是更具優勢的選擇。

IronPDF 提供免費的開發者授權和免費試用. Iron Software 提供一個被稱為 Iron Suite 的綜合套件。這個套件包含IronBarcode, IronXL, IronQR, IronOCR, IronPDF,和IronWebScraper,以提供2款軟體的價格,為尋求廣泛功能的開發人員增加了顯著的價值。

最後,兩者之間的選擇將取決於專案或開發人員的具體需求和環境。

< 上一頁
IronPDF與DinktoPdf之間的比較
下一個 >
在 C# 中使用 ITextSharp 和 IronPDF 創建 PDF 的比較

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

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >