使用 IRONPDF

如何在Blazor中顯示來自字節陣列的PDF

里根普恩
里根普恩
2023年5月8日
已更新 2024年3月10日
分享:

1. 介紹

IronPDF for C# PDF解決方案和文檔 是一個C# PDF庫,支持處理PDF渲染並將字節數組轉換為PDF文件。 它還支援檢視和列印 PDF; 它還支持使用註解工具來審閱 PDF。 使用 IronPDF 添加頁眉和頁腳,合併多個 PDF 也非常方便。

IronPDF 可以與 Blazor PDF 檢視器一起使用來創建 PDF 檢視器,並且它可以通過創建瀏覽器可以顯示的對象 URL 來處理較大的文件大小。

使用IronPDF與Blazor,開發者可以創建一個PDF檢視器,可以從字節陣列或檔案名稱顯示PDF檔,並且支援檔案上傳和處理檔案下載。 IronPDF 也提供了一種處理 PDF 文件分頁的方法,這在 Blazor 中運行良好。

此外,IronPDF 提供將位元組陣列轉換為 PDF 文件、下載 PDF 文件以及從base64字串顯示 PDF 的程式碼範例。 開發人員還可以將 PDF 文件轉換為其他文件格式,例如將圖片轉換為 PDF 文檔

IronPDF 可以與 Blazor 伺服器應用程式一起使用,並且可以與 Visual Studio 整合,以提供流暢的開發體驗。 使用 IronPDF,開發人員可以創建一個專業級的 UI 元件,用於構建現代化、功能豐富的 Web 應用程式。

本文說明開發人員如何使用 IronPDF 將 PDF 位元組陣列轉換為 PDF 文件,並在 Blazor PDF 檢視器中顯示它們。

2. 要求

要跟隨教程,您需要以下工具和要求:

  • Visual Studio 2019 或更高版本:這是建立和運行 Blazor 應用程式所需的。 可以從Visual Studio 官方網站下載
  • .NET 5.0 或更新版本:這是建置和運行 Blazor 應用程式所需的。 可從官方 .NET 下載頁面下載
  • IronPDF:這是專業級的UI庫,用於將PDF字節陣列轉換為PDF文件,並在Blazor PDF查看器中顯示。 可以從IronPDF 官方網站下載
  • IronPDF.Blazor NuGet 套件:這是將用來把 IronPDF 整合進 Blazor 應用程式中的 NuGet 套件。 可以從 Visual Studio 的 NuGet 套件管理器安裝。

    教學中討論的某些功能可能需要付費版本的IronPDF。 此外,本教學假設使用者具備Blazor和C#的基本理解。

3. 建立 Blazor 應用程式

在開始建構我們的第一個 Blazor 應用程式之前,我們必須創建一個新的 Visual Studio 專案。

  • 打開 Visual Studio。
  • 點擊建立新專案。
  • 應選擇 Blazor Server 應用程式範本。

    如何在 Blazor 中從位元組陣列顯示 PDF,圖 1:在 Visual Studio 中建立新專案

    在 Visual Studio 中建立新專案

  • 選擇下一個選項。
  • 您的應用程式名稱。

    如何在 Blazor 中從位元組陣列顯示 PDF,圖 2:在 Visual Studio 中創建新專案

    在 Visual Studio 中建立新專案

  • 選擇下一個選項。
  • 選擇 .NET Framework

    如何在 Blazor 中從位元組陣列顯示 PDF,圖 3:為新的 Blazor Server 應用程式選擇 .NET 6.0 框架

    為新的 Blazor 伺服器應用程式選擇 .NET 6.0 框架

  • 點擊創建按鈕。
  • 如下所示,將建立一個新專案。

    如何在 Blazor 中從位元組陣列顯示 PDF,圖 4:什麼是 Blazor 及其運作原理

    什麼是Blazor及其運作方式

    為了提供一個可立即使用的簡單 Blazor 軟體,已產生了多個檔案。

  • 啟動服務器的應用程式入口點是program.cs,您也可以在此處設置應用程式的中介軟體和服務。
  • 應用程式的主要部分稱為 "App.razor"。
  • 應用程式的一些範例網頁可以在 Pages 目錄中找到。
  • 本機開發環境的不同配置設定定義在位於 Properties 目錄中的 "launchSettings.json" 文件中。 當專案被建立時,系統會自動指派一個埠號並將其儲存到此檔案中。

    啟動範本程式。

Blazor 專案類型

Blazor 支援兩種專案類型:Blazor Server 和 Blazor WebAssembly。

前者在伺服器上運行,使用 SignalR 與瀏覽器進行通信。 這意味著應用程式的使用者介面是在伺服器上呈現的,瀏覽器僅接收來自伺服器的更新。 Blazor Server 的優勢在於能夠支持更大型的應用程式,且能輕鬆處理更多使用者。

另一方面,Blazor WebAssembly 應用程式完全在瀏覽器中運行,無需伺服器即可運行。 這使它們更加輕量化且加載速度更快,但它們有一些限制,例如無法支持較大的文件。

在本教程中,建議使用 Blazor Server 應用程式,因為它可以支援顯示和處理可能較大的 PDF 檔案。 此外,Blazor Server 可以支援檢視和列印 PDF,這可能是 PDF 檢視應用程式的一個有用功能。

安裝 IronPDF

在本節中,我們將討論如何使用不同的方法安裝IronPDF。

使用命令行

在 Visual Studio 中,導航至 工具 > NuGet 封裝管理員 > 封裝管理員主控台

在套件管理器的終端標籤中輸入以下行:

Install-Package IronPdf

現在已經下載了套件,目前的專案將會安裝它。

如何在 Blazor 中顯示來自位元組陣列的 PDF,圖 5:套件管理器控制台 UI

套件管理員控制台 UI

使用管理 NuGet 套件適用於解決方案

您可以在 Visual Studio 中使用 NuGet 套件管理器 UI 將套件直接安裝到項目中。 以下截圖顯示如何打開它。

如何在 Blazor 中從位元組數組顯示 PDF,圖 6:導航至 NuGet 套件管理器

導航至 NuGet 套件管理器

套件管理器 UI 提供了一個瀏覽功能,顯示在 NuGet 網站上提供的套件庫列表。輸入關鍵字「IronPDF」,如下圖所示,以找到 IronPDF 套件。

如何在 Blazor 中從位元組陣列顯示 PDF,圖 7:在 NuGet 封裝管理器 UI 中搜尋並安裝 IronPDF 套件

在 NuGet 套件管理器 UI 中搜尋並安裝 IronPDF 套件

瀏覽 區段中搜尋以在 NuGet 套件管理器中找到 IronPDF 庫。

選擇IronPDF套件並點擊「安裝」按鈕將其添加到專案中。

4. 從位元組陣列創建和顯示PDF

若要在 Blazor 應用程式中使用 IronPDF 生成 PDF 位元組陣列,首先需要將 IronPDF 相依項目新增至您的專案。

將 IronPDF 相依項新增到您的 Blazor 應用程式後,您可以使用以下代碼建立 PDF 文件:

string _url = "";
private async Task ViewFile()
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
    _url = $"data:application/pdf;base64,{Convert.ToBase64String(pdf.Stream.ToArray())}";
}
string _url = "";
private async Task ViewFile()
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
    _url = $"data:application/pdf;base64,{Convert.ToBase64String(pdf.Stream.ToArray())}";
}
Private _url As String = ""
Private Async Function ViewFile() As Task
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata")
	_url = $"data:application/pdf;base64,{Convert.ToBase64String(pdf.Stream.ToArray())}"
End Function
$vbLabelText   $csharpLabel

上面提到的程式碼片段首先使用了IronPDF的RenderUrlAsPdf 方法文檔,該方法從指定的URL下載HTML文字並將其轉換為PDF格式。 生成的 PDF 資料將由程式碼片段轉換為未處理的 base64 數據字符串,並儲存在本地變數中。

應用程式可以使用 IronPDF 的SaveAs 功能文件(可在每個ChromePdfRenderer 實例文件中訪問)將創建的 PDF 檔案儲存在伺服器的檔案系統中以供日後訪問。

base64 PDF資料已準備好在程式碼的下一部分輸出到客戶的瀏覽器。

@if (_url != string.Empty)
{

}
@if (_url != string.Empty)
{

}
'INSTANT VB WARNING: The following constructor is declared outside of its associated class:
'ORIGINAL LINE: if(_url != string.Empty)
Private Sub New(Optional _url (Not ByVal) As = String.Empty)

End Sub
$vbLabelText   $csharpLabel

上述函數將收到的基於 Blazor 伺服器端的 base64 數據綁定到 iframe 元素的 src 屬性。這會使瀏覽器使用其內建的網頁查看器來將 Base64 內容呈現為適當的 PDF 文件,一旦頁面加載完成。

這是一張從 base64 字串生成的 PDF 文件圖片。

如何在 Blazor 中從位元組陣列顯示 PDF,圖 8:在瀏覽器中查看在 Blazor 應用程式中生成的 PDF

在瀏覽器中查看由Blazor應用生成的PDF

建立簡單的 PDF 文件

以下是一個使用 IronPDF 在 C# 中創建簡單 PDF 文件的示例代碼片段:

var renderer = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Hello world!!")
var renderer = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Hello world!!")
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'var renderer = New IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Hello world!!")
$vbLabelText   $csharpLabel

使用前一節所述的方法,客戶端的瀏覽器可以用來查看創建的 PDF 文件。

6. 結論

此教學展示如何在 Blazor 服務器應用中使用IronPDF 功能和教程來創建和顯示 PDF 文檔。它首先介紹 IronPDF 及其功能,包括如何將 HTML 轉換為 PDF、添加自定義頁眉和頁腳,以及合併多個 PDF。 然後,它提供了逐步安裝IronPDF的說明,並在Blazor Server應用程式中創建PDF檔案,然後將其轉換為PDF位元組陣列,並使用iframe在Blazor PDF觀看器上顯示。

整體而言,本教學概述了如何使用IronPDF和Blazor創建和顯示PDF文件。 它鼓勵讀者進一步嘗試使用IronPDF並嘗試不同的功能來創建功能豐富的應用程式。

如果您有興趣在您的 Blazor 專案中嘗試使用 IronPDF,您可以利用IronPDF 的免費試用。 這給了您充足的時間來嘗試該庫的功能並看看它是否符合您的需求。

要開始進行,您可以參考IronPDF用於Blazor的文檔,其中提供了在您的項目中使用該庫的詳細信息。 您還可以瀏覽IronPDF Blog and Tutorials,其中包含涵蓋PDF 操作和渲染相關主題的教程和文章。

我們鼓勵您花時間進一步試驗 IronPDF 和 Blazor,看看它們如何提升您的 PDF 相關開發工作。 如需了解有關 Blazor PDF 檢視器的更多資訊,請參閱以下的IronPDF Blazor PDF Viewer 教程

里根普恩
軟體工程師
Regan 畢業於雷丁大學,擁有電子工程學士學位。在加入 Iron Software 之前,他的工作角色讓他專注於單一任務;而他在 Iron Software 工作中最喜歡的是他所能承擔的工作範圍,無論是增加銷售價值、技術支持、產品開發或市場營銷。他喜歡了解開發人員如何使用 Iron Software 庫,並利用這些知識不斷改進文檔和開發產品。
< 上一頁
如何在C#中保存PDF檔案(初學者教程)
下一個 >
如何解除 PDF 安全性(初學者教程)