使用 IRONPDF

Blazor PDF 檢視器教程

介紹

Adobe 創建了便攜式文件格式 (PDF),這種格式被廣泛用於發佈格式化的文本和圖像。 在本教程中,推薦將IronPDF整合到Blazor伺服器端應用程式以顯示PDF,因為它易於使用且高效。

1. IronPDF 功能

借助功能強大的 IronPDF PDF .NET 庫,開發人員可以輕鬆創建、閱讀和修改 PDF 文件。 基於 IronPDF Chrome 渲染引擎,IronPDF 包含一系列有用且強大的功能,例如將 HTML5、JavaScript、CSS 和圖像轉換為 PDF 的能力、添加自訂的頁首和頁尾至 PDF 的功能,以及創建與網頁瀏覽器中顯示完全相符的 PDF 的能力。

IronPDF 支援多種網頁技術,包括 HTML、ASPX、Razor View 和 MVC。 以下是 IronPDF 的主要特點:

  • IronPDF 提供對 .NET C# 應用程式內 PDF 文件創建和修改的完整控制權。
  • IronPDF 可以使用特定的 User-Agent、Proxy、Header 和 Cookie 配置從其 URL 生成網頁的 PDF 文件
  • IronPDF 可以從現有的 PDF 文件中刪除圖像
  • IronPDF 可以在 PDF 文件中添加文字、照片、書籤、水印 及其他元素
  • IronPDF具有多種功能,可以輕鬆合併和拆分PDF文件
  • IronPDF 能夠理解並呈現網絡媒體資源,例如 CSS 和 JavaScript
  • IronPDF 支援多種 .NET 桌面和 MVC Web 應用程式框架,包括 ASP.NET 和 Blazor。

2. 什麼是Blazor?

Blazor 是一種實驗性的網頁應用程式框架,使得可以使用 Web Assembly 在 C# 和 HTML 中創建客戶端網頁應用程式。

Web Assembly 應用程式以二進位指令格式發送到瀏覽器,可以以接近本機速度運行。 這為在瀏覽器中執行像 C# 這樣的語言創造了新的潛力。

在 Visual Studio 中建立新專案

首先,打開 Microsoft Visual Studio 應用程式,然後從檔案選單中選擇「新專案」。 然後,選擇 “Blazor 伺服器應用程式”。

Blazor PDF 檢視器教程,圖 1:在 Visual Studio 中創建一個新專案

在 Visual Studio 中創建新專案

輸入專案名稱並選擇檔案路徑。 然後,點擊創建按鈕。

Blazor PDF 檢視器教學,圖2:在 Visual Studio 中建立新專案

在 Visual Studio 中創建新專案

此外,選擇所需的 .NET Framework。 建議使用最新版本以確保穩定性。

Blazor PDF 檢視器教程,圖 3:為新的 Blazor 伺服器應用選擇 .NET 6.0 框架

為新的 Blazor Server 應用程式選擇 .NET 6.0 框架

Microsoft Visual Studio 現在將為新的 Blazor Server App 生成結構。此專案將包含一組 .razor 文件,您可以在其中輸入源代碼。

接下來的步驟將把IronPDF程式庫添加到專案中。

3. 安裝 IronPDF 庫

IronPDF 程式庫可以透過四種方式下載和安裝:

  • 使用 Visual Studio 的 NuGet 套件管理器
  • 使用 Visual Studio 的命令行
  • 直接從 NuGet 網站下載
  • 直接從IronPDF網站下載

3.1 使用 Visual Studio 的 NuGet 套件管理員

Visual Studio 提供 NuGet 套件管理器,以協助將程式庫直接安裝到專案中。 下圖顯示如何打開 NuGet 套件管理器。

Blazor PDF Viewer 教程,圖 4:存取 Visual Studio 的 NuGet 套件管理器

訪問 Visual Studio 的 NuGet 套件管理器

在「瀏覽」選項卡下方使用搜尋欄來搜尋「IronPDF」,如下面的螢幕截圖所示:

Blazor PDF Viewer 教程,圖 5:在 NuGet 套件管理器 GUI 中搜尋 IronPDF 函式庫

在 NuGet 套件管理器 GUI 中搜尋 IronPDF 函式庫

上面的圖片顯示了相關搜尋結果的列表。 選擇所需的選項將套件安裝到您的專案中。

3.2 使用 Visual Studio 命令列

在 Visual Studio 中,前往工具 > NuGet 套件管理員 > 套件管理員主控台

在「套件管理員主控台」標籤中輸入以下內容:

Install-Package IronPdf
Install-Package IronPdf
SHELL

現在將在當前專案中下載並安裝這個套件。

Blazor PDF 檢視器教學,圖 6:使用 NuGet 套件管理器主控台安裝 IronPDF 庫

使用 NuGet 套件管理器主控台安裝 IronPDF 函式庫

3.3 從 NuGet 網站直接下載

安裝 IronPDF 函式庫的第三種方法是直接從網站下載 NuGet 套件。

導航至NuGet 上的 IronPDF 套件

  • 從右側選單中點擊「下載包」選項。
  • 在您的文件系統上打開下載的套件。 將自動安裝。
  • 重新載入解決方案並在您的專案中開始使用。

3.4 直接從 IronPDF 網站下載

IronPDF 網站下載最新套件。

下載後,請按照以下步驟將套件添加到您的專案中:

  • 在解決方案窗口中右鍵點擊專案。
  • 選擇「引用」選項,然後導航至您之前下載的庫的位置。
  • 單擊確定以將該庫添加為引用。

4. 使用 Blazor 伺服器應用程式檢視 PDF 文件

在本教程中構建的 Blazor 應用程式將從網頁的 URL 創建 PDF 文檔,並在客戶端的網頁瀏覽器中呈現。

使用 IronPDF,查看 PDF 非常簡單。

將以下源代碼添加到相應的.razor文件。

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

上面的代碼片段首先使用 IronPDF 的 RenderUrlAsPdf 方法,該方法從給定的 URL 下載 HTML 內容並將其轉換為 PDF 格式。 隨後,程式碼片段將生成的 PDF 內容呈現為原始 base64 資料的字串,並將其儲存在本機變數中。

為了方便起見,應用程序可以使用 IronPDF 的 SaveAs 方法(可在任何 ChromePdfRenderer 實例上使用)將生成的 PDF 文檔保存到服務器的文件系統中,以便稍後快速訪問。

下一段程式碼將準備好的 base-64 PDF 資料輸出到客戶端的瀏覽器上。

@if (_imgUrl != string.Empty)
{
    <iframe src="@_imgUrl" style="width:750px;height:750px;" type="application/pdf"/>
}
@if (_imgUrl != string.Empty)
{
    <iframe src="@_imgUrl" style="width:750px;height:750px;" type="application/pdf"/>
}
'INSTANT VB WARNING: The following constructor is declared outside of its associated class:
'ORIGINAL LINE: if(_imgUrl != string.Empty)
Private Sub New(Optional _imgUrl (Not ByVal) As = String.Empty)
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: <iframe src="@_imgUrl" style="width:750px;height:750px;" type="application/pdf"/>
	"width:750px;height:750px;" type="application/pdf"/>
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: <iframe src="@_imgUrl" style="width:750px;height:750px;" type
	"@_imgUrl" style="width:750px;height:750px;" type
	<iframe src="@_imgUrl" style
End Sub
$vbLabelText   $csharpLabel

上面的函式接收來自Blazor伺服器端的base64資料,並將其綁定到iframe元素的src屬性。 在頁面載入時,這會觸發瀏覽器使用其內建檢視器將base64內容渲染為正確的 PDF 文件。

以下是從base64字符串渲染出的PDF文件截圖。

![Blazor PDF 檢視器教學,圖 7:在瀏覽器中查看在 Blazor 應用程式中生成的 PDF。 此 PDF 是由 IronPDF 創建並以 base64 字串發送至瀏覽器。

**Viewing a PDF Generated in a Blazor app in the browser. 此 PDF 由 IronPDF 生成,並作為 base64 字串發送到瀏覽器。

從 HTML 字串查看 PDF 文件

以下是一個展示如何使用IronPDF從一串HTML標籤創建PDF文件的例子。

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

生成的 PDF 文件可以按照上一節中詳細說明的程序從客戶端瀏覽器查看。

結論

本文介紹如何開發一個 Blazor 網頁應用程式,使用 IronPDF 庫從網頁生成 PDF 文件並在用戶的瀏覽器中顯示。

IronPDF不是開源的; 然而,免費試用金鑰 允許您在生產環境中使用,而不會有浮水印。

Chipego
奇佩戈·卡林达
軟體工程師
Chipego 擁有天生的傾聽技能,這幫助他理解客戶問題,並提供智能解決方案。他在獲得信息技術理學學士學位後,于 2023 年加入 Iron Software 團隊。IronPDF 和 IronOCR 是 Chipego 專注的兩個產品,但隨著他每天找到新的方法來支持客戶,他對所有產品的了解也在不斷增長。他喜歡在 Iron Software 的協作生活,公司內的團隊成員從各自不同的經歷中共同努力,創造出有效的創新解決方案。當 Chipego 離開辦公桌時,他常常享受讀好書或踢足球的樂趣。
< 上一頁
使用 IronPDF 在 ASP.NET Core 中創建 PDF 生成器
下一個 >
使用 Blazor 教程創建 PDF 文件