使用Telerik Blazor PDF Viewer功能增強您的應用程式
將 Telerik UI 的精美 PDF 檢視器元件與 IronPDF 基於 Chrome 的渲染引擎相結合,即可在 Blazor 中建立完整的 PDF 解決方案。 此設定可讓您從 HTML 產生動態 PDF,同時為使用者提供專業的檢視功能,例如搜尋、縮放和導覽控制。
在建立現代 Blazor 應用程式時,可靠的 PDF 檢視功能通常是必不可少的。 雖然 Telerik UI for Blazor 提供了一個優秀的 PDF 檢視器元件,但將其與IronPDF 的高效生成引擎集成,可以為在應用程式中處理 PDF 文件提供完整的解決方案。 此整合可讓您從 HTML 建立 PDF、將 URL 轉換為 PDF 以及將 CSHTML 視圖渲染為 PDF,同時提供專業的檢視功能。
為什麼要將 Telerik UI 與 IronPDF 結合使用?
Telerik Blazor PDF 檢視器在顯示 PDF 檔案方面表現出色,具有文字搜尋、縮放控制和可自訂工具列等功能。 但是,當您需要從 HTML、URL 或 Razor 視圖動態產生 PDF 檔案時,IronPDF 提供了基於 Chrome 的渲染引擎,而 Telerik UI 的文件處理庫中並未包含該引擎。 IronPDF 的 Chrome 渲染引擎可確保在將網頁內容轉換為 PDF 時達到像素級的精確度。
這種混合方法讓您既可以使用 IronPDF 出色的 PDF 創建功能,又可以使用 Telerik 精緻的 UI 元件進行顯示。 在對舊版 Web 專案進行現代化改造或建立需要產生和檢視功能的 Blazor PDF 解決方案時,它尤其有效。 您也可以在顯示產生的 PDF 檔案之前,為其新增頁首和頁尾、套用浮水印以及設定自訂邊距。
這種整合的價值何在?
該組合滿足了常見的 PDF 工作流程需求——動態生成發票、報告或文檔,同時為使用者提供熟悉的 PDF 查看控制項。 IronPDF 能夠處理基本的 HTML 轉 PDF 轉換器無法處理的複雜渲染場景,包括 JavaScript 執行、CSS3 支援和 Web 字體渲染,而 Telerik 則提供了使用者期望的專業介面。
何時應該同時使用這兩個函式庫?
這種方法最適用於既需要產生 PDF 又需要查看 PDF 的應用,例如文件管理系統、報告儀表板或客戶入口網站。 如果您只需要顯示現有的 PDF 文件,那麼 Telerik 就足夠了; 如果您只需要產生文件而無需查看,那麼 IronPDF 單獨使用就完全足夠了。 對於需要數位簽名、PDF/A 合規性或 PDF 安全功能的企業場景,此組合提供了完整的功能。
如何安裝和設定項目?
在 Blazor 專案中設定這兩個函式庫需要安裝必要的 NuGet 套件。 您可以使用套件管理器控制台或 .NET CLI。 IronPDF 可在NuGet.org上取得,並可與 .NET 10 及更高版本搭配使用。 更多詳情請參閱IronPDF NuGet 安裝指南。
Install-Package IronPdf
dotnet add package IronPdf
Install-Package IronPdf
dotnet add package IronPdf
安裝完成後,請設定您的 Program.cs 以新增服務:
builder.Services.AddTelerikBlazor();
builder.Services.AddSingleton<ChromePdfRenderer>();
builder.Services.AddTelerikBlazor();
builder.Services.AddSingleton<ChromePdfRenderer>();
此配置可在您的應用程式中同時啟用 Telerik UI for Blazor 元件和 IronPDF 的渲染功能。 DevCraft 已經熟悉 Telerik 的套件使用者會發現此整合非常簡單。 對於更複雜的場景,您可能需要探索非同步 PDF 產生或自訂日誌記錄配置。
您應該考慮哪些配置選項?
除了基本設定之外,您可能還需要全域配置 IronPDF 的渲染選項,或為自訂 PDF 產生服務設定依賴注入。 根據應用程式的需求,考慮新增 PDF 壓縮、渲染逾時或自訂字體管理等配置。
你們如何處理這兩款產品的授權許可?
這兩個庫都需要商業許可才能用於生產環境。 IronPDF 許可證是基於開發人員數量和部署情況,而 Telerik UI for Blazor 通常作為 DevCraft 捆綁包的一部分提供。 請確保您擁有適用於部署方案的相應授權。 了解更多關於IronPDF 許可選項以及如何在您的應用程式中應用許可證密鑰的資訊。 您也可以先試用IronPDF 的免費試用版來測試整合功能,然後再購買。
如何使用 IronPDF 建立用於顯示的 PDF 文件?
IronPDF 將 HTML 內容轉換為 Telerik PDF 檢視器可以顯示的 PDF 檔案。 以下是如何從 HTML 產生 PDF 並使其可供查看的方法。 您也可以將 HTML 字串轉換為 PDF或直接渲染 HTML 檔案:
@page "/generate-pdf"
@inject ChromePdfRenderer Renderer
@code {
private byte[] pdfData;
private async Task GeneratePDF()
{
// Create PDF from HTML content
var pdf = await Renderer.RenderHtmlAsPdfAsync(@"
<h1>Invoice Report</h1>
<table>
<tr><td>Item</td><td>Amount</td></tr>
<tr><td>Service</td><td>$100</td></tr>
</table>");
// Convert to byte array for Telerik viewer
pdfData = pdf.BinaryData;
}
}
@page "/generate-pdf"
@inject ChromePdfRenderer Renderer
@code {
private byte[] pdfData;
private async Task GeneratePDF()
{
// Create PDF from HTML content
var pdf = await Renderer.RenderHtmlAsPdfAsync(@"
<h1>Invoice Report</h1>
<table>
<tr><td>Item</td><td>Amount</td></tr>
<tr><td>Service</td><td>$100</td></tr>
</table>");
// Convert to byte array for Telerik viewer
pdfData = pdf.BinaryData;
}
}
Imports System.Threading.Tasks
Imports Microsoft.AspNetCore.Components
Imports DinkToPdf
@page "/generate-pdf"
@inject ChromePdfRenderer Renderer
@code
Private pdfData As Byte()
Private Async Function GeneratePDF() As Task
' Create PDF from HTML content
Dim pdf = Await Renderer.RenderHtmlAsPdfAsync("
<h1>Invoice Report</h1>
<table>
<tr><td>Item</td><td>Amount</td></tr>
<tr><td>Service</td><td>$100</td></tr>
</table>")
' Convert to byte array for Telerik viewer
pdfData = pdf.BinaryData
End Function
End Code
這段程式碼會產生一個可供顯示的PDF文件。 IronPDF 的渲染引擎可確保您的 HTML、CSS 和 JavaScript 內容完美渲染,並在使用者透過 PDF 檢視器元件查看時保持所有格式。 您也可以在 PDF 中新增影像、嵌入 Azure Blob 儲存體中的影像,或直接將影像轉換為 PDF。 探索IronPDF 的全部功能,了解其可能性。
ChromePdfRenderer 類別提供了豐富的自訂選項。 您可以設定頁面大小、邊距、頁首、頁腳,並為印刷媒體定義自訂 CSS——這些功能是對 Telerik 查看功能的補充。 對於進階場景,請探索分頁符號控制、視口配置或基本 URL 設置,以正確載入資源。
生成的 PDF 是什麼樣子?
產生的PDF檔案大致如下所示:
這是一個PDF文件檢視器,顯示了一個包含"項目"和"金額"列的表格發票報告,其中顯示了一項金額為100美元的服務條目,展示了IronPDF的HTML轉PDF渲染功能,格式清晰,佈局專業。
如何自訂PDF生成設定?
IronPDF 透過 ChromePdfRenderOptions 提供廣泛的自訂功能,讓您可以控制頁面方向、大小、邊距和 JavaScript 執行。 您也可以在將 PDF 傳遞給檢視器之前,以程式設計方式新增浮水印、套用頁首和頁尾以及新增頁碼。 為了更好地組織文檔,可以考慮添加書籤或建立目錄。 IronPDF 文件詳細介紹了所有可用選項。
如何整合 Telerik 的 PDF 檢視器 Blazor 元件?
使用 IronPDF 產生 PDF 檔案後,使用 Telerik Blazor PDF 檢視器顯示此檔案非常簡單:
<TelerikPdfViewer Data="@pdfData"
Height="600px"
Zoom="1.0">
<PdfViewerToolBar>
<PdfViewerToolBarPagerTool />
<PdfViewerToolBarZoomTool />
<PdfViewerToolBarSearchTool />
<PdfViewerToolBarDownloadTool />
</PdfViewerToolBar>
</TelerikPdfViewer>
<TelerikPdfViewer Data="@pdfData"
Height="600px"
Zoom="1.0">
<PdfViewerToolBar>
<PdfViewerToolBarPagerTool />
<PdfViewerToolBarZoomTool />
<PdfViewerToolBarSearchTool />
<PdfViewerToolBarDownloadTool />
</PdfViewerToolBar>
</TelerikPdfViewer>
此元件配置提供了與 PDF 互動的基本工具。 工具列包含導覽按鈕、縮放等級控制和搜尋功能。 您可以根據應用程式需求自訂顯示哪些工具。 Data 屬性提供要顯示的 PDF 值。 為了提高功能性,您可能需要實作文字擷取或 PDF 搜尋功能。
Telerik UI for Blazor 檢視器可自動處理瀏覽器相容性,無需外掛程式即可在現代瀏覽器上運作。 對於使用 .NET MAUI 的桌面應用程式,這兩個程式庫都支援跨平台部署,讓您可以在 Web 和桌面平台上建立一致的 PDF 體驗。
工具列有哪些自訂選項?
Telerik 的 PDF 檢視器工具列具有高度可自訂性——您可以新增、刪除或重新排列工具,建立自訂按鈕,甚至建立完全自訂的工具列。 常見的自訂功能包括新增列印按鈕、全螢幕切換或應用程式特定的操作。 您也可以將 PDF 列印功能或 PDF 表單編輯功能整合到自訂工具列中。 Telerik 的官方文件提供了完整的自訂選項清單。
如何處理大型PDF文件?
對於大型 PDF 文件,可以考慮使用 PDF 記憶體流實現漸進式載入或串流。 Telerik 檢視器支援從 URL 載入 PDF,這有助於提高效能。 您也可以對產生的 PDF 檔案進行伺服器端快取,以避免重新產生相同的文件。 為了優化效能,可以探索PDF 合併和分割技術,以縮小檔案大小或將文件拆分成易於管理的區塊。
這些組件如何協同工作?
此整合創建了一個高效的工作流程,其中 IronPDF 負責繁重的 PDF 創建工作,而 Telerik 則提供流暢的查看體驗。 以下是一個完整的範例,示範如何從包含動態內容的 HTML 建立 PDF:
@page "/document-viewer"
@inject ChromePdfRenderer Renderer
<div class="row">
<div class="col-md-12">
<TelerikButton OnClick="@LoadDocument">
Load PDF Document
</TelerikButton>
@if (documentData != null)
{
<TelerikPdfViewer Data="@documentData"
Height="800px">
</TelerikPdfViewer>
}
</div>
</div>
@code {
private byte[] documentData;
private async Task LoadDocument()
{
// Generate dynamic PDF content
var html = await GenerateReportHtml();
var pdf = await Renderer.RenderHtmlAsPdfAsync(html);
documentData = pdf.BinaryData;
}
private async Task<string> GenerateReportHtml()
{
// Build HTML dynamically
return "<h1>Dynamic Report</h1><p>Report content here</p>";
}
}
@page "/document-viewer"
@inject ChromePdfRenderer Renderer
<div class="row">
<div class="col-md-12">
<TelerikButton OnClick="@LoadDocument">
Load PDF Document
</TelerikButton>
@if (documentData != null)
{
<TelerikPdfViewer Data="@documentData"
Height="800px">
</TelerikPdfViewer>
}
</div>
</div>
@code {
private byte[] documentData;
private async Task LoadDocument()
{
// Generate dynamic PDF content
var html = await GenerateReportHtml();
var pdf = await Renderer.RenderHtmlAsPdfAsync(html);
documentData = pdf.BinaryData;
}
private async Task<string> GenerateReportHtml()
{
// Build HTML dynamically
return "<h1>Dynamic Report</h1><p>Report content here</p>";
}
}
@page "/document-viewer"
@inject ChromePdfRenderer Renderer
<div class="row">
<div class="col-md-12">
<TelerikButton OnClick="@LoadDocument">
Load PDF Document
</TelerikButton>
@If documentData IsNot Nothing Then
<TelerikPdfViewer Data="@documentData"
Height="800px">
</TelerikPdfViewer>
End If
</div>
</div>
@code
Private documentData As Byte()
Private Async Function LoadDocument() As Task
' Generate dynamic PDF content
Dim html = Await GenerateReportHtml()
Dim pdf = Await Renderer.RenderHtmlAsPdfAsync(html)
documentData = pdf.BinaryData
End Function
Private Async Function GenerateReportHtml() As Task(Of String)
' Build HTML dynamically
Return "<h1>Dynamic Report</h1><p>Report content here</p>"
End Function
End Code
整合解決方案是什麼樣的?
這種模式允許您按需生成 PDF 文件並立即顯示。 當有新資料可用時,此元件會做出響應式更新,與傳統的下載和開啟工作流程相比,可改善使用者體驗。 OnClick 事件觸發文件載入程序。 您可以透過合併多個 PDF 、新增附件或實施版本追蹤來進一步改進此功能。
對於需要載入現有 PDF 檔案的情況,IronPDF 可以在將其傳遞給檢視器之前對其進行處理。 這使得添加浮水印、頁面操作或在顯示前提取內容等功能成為可能。 進階使用者還可以對敏感文件實施 PDF 清理或編輯。 您也可以使用 PDF 表單在向最終使用者展示文件之前預先填寫表單欄位。
如何新增互動功能?
除了基本的檢視功能外,您還可以透過在顯示之前使用 IronPDF 處理 PDF 來實現表單填寫、數位簽名或註釋等功能。 這樣,您就可以建立互動式文件工作流程,同時保持 Telerik 檢視器的使用者友善介面。 您可以以程式設計方式簽署 PDF 文件,或為電子簽名工作流程新增簽名欄位。 這些功能使得這種方法適用於需要可審計性和文件完整性的受監管行業。
那麼,效能優化方面呢?
對於複雜文檔,可以考慮使用託管服務或佇列來實現後台 PDF 生成。 快取常用的 PDF 文件,並在儲存或傳輸 PDF 資料時使用壓縮,以提高應用程式的回應速度。 對於高容量場景,可以探索非同步和多執行緒選項或並行 PDF 生成。 您也可以透過自訂渲染延遲來改善 JavaScript 密集型內容的渲染效果。
為什麼選擇這種混合方法?
雖然 Telerik UI for Blazor 提供了出色的檢視功能,但它在 PDF 生成能力方面無法與 IronPDF 相提並論。 IronPDF 以 Chrome 為基礎的引擎可以渲染複雜的佈局、表單和樣式化內容,而一些簡單的文件處理庫可能難以處理這些內容。 兩者結合,即可獲得專業的 PDF 生成功能和專業的檢視介面。
這種方法為需要探索不同檢視選項的開發人員提供了靈活性。 您可以用更簡單的 iframe 顯示替換 Telerik 檢視器,或開發自訂檢視組件,同時保留 IronPDF 的生成功能。 此解決方案能夠很好地擴展,從簡單的 HTML 到 PDF 轉換到複雜的報表產生場景均可適用。 IronPDF 主頁提供了所有支援用例的概述。
成本效益考量有哪些?
雖然使用兩個商業庫會增加授權費用,但節省的開發時間和所取得的專業成果通常足以證明這項投資是值得的。 考慮從頭開始建立 PDF 生成和檢視功能-組合解決方案可提供即時、可直接投入生產使用的功能。 這兩個庫都提供了優秀的文檔,其中 IronPDF 提供了完整的操作指南和程式碼範例,以加快開發速度。 查看IronPDF 授權頁面,選擇適合您團隊規模和部署環境的方案。
與其他解決方案相比,這種方案有何優勢?
僅使用開源程式庫等替代方法通常需要更多的開發工作,並且可能缺乏功能或完善性。 基於雲端的PDF服務會帶來延遲和資料隱私問題。 這種混合方法將所有內容保留在您的應用程式中,同時提供領先的功能。 例如,您可以完全控制PDF 到影像的轉換,而無需透過外部服務路由資料。 請將Telerik 文件和IronPDF 文件並排查看,以了解這兩個庫是如何相互補充的。
下一步實施步驟是什麼?
使用 IronPDF 建立 Telerik Blazor PDF 檢視器,可讓您同時擁有兩全其美的優勢:高效的 PDF 產生和流暢的檢視體驗。 這種組合可以幫助您建立完整的 PDF 解決方案,從而實現傳統 Web 專案的現代化,並滿足現代應用程式的需求。 無論部署在 Windows、Linux 或 macOS 上,這兩個函式庫都提供跨平台支援。
無論您是在建立文件管理系統、報告工具,還是任何需要 PDF 功能的 Blazor 應用程序,此整合都能提供您的專案所需的功能和使用者體驗。 從簡單的發票產生到複雜的報表製作,該組合解決方案能夠有效處理各種不同的需求。
準備好實施這個方案了嗎? 立即開始免費試用 IronPDF ,探索它如何改善您的 Telerik UI for Blazor 專案。 對於生產用途,請查看IronPDF 的授權選項,找到最適合您需求的方案。
常見問題解答
什麼是Telerik Blazor PDF Viewer?
Telerik Blazor PDF Viewer是一個設計用於在Blazor應用中直接顯示PDF文件的組件,為用戶提供無縫的查看體驗。
IronPDF如何增強Telerik Blazor PDF Viewer?
IronPDF通過提供穩健的PDF生成能力增強了Telerik Blazor PDF Viewer,使開發人員能夠高效地在其Blazor應用中創建、修改和管理PDF文件。
為何將IronPDF與Telerik UI for Blazor結合?
將IronPDF與Telerik UI for Blazor結合提供了一個全面的PDF處理解決方案,因為IronPDF為Telerik現有查看器功能增加了高級生成和操作特性。
我可以在Blazor應用中使用IronPDF生成PDF嗎?
是的,IronPDF允許您在Blazor應用程式中生成高品質的PDF,提供HTML轉PDF轉換和詳細自訂選項等功能。
使用IronPDF處理Blazor應用程式中的PDF有哪些好處?
IronPDF提供強大的功能,如PDF生成、轉換和編輯能力,增強Blazor應用程式中PDF處理的功能和彈性。
將IronPDF與Telerik Blazor元件整合是否容易?
是的,IronPDF可以輕鬆地與Telerik Blazor元件整合以擴展其功能,為開發Blazor應用程式的開發者提供無縫的體驗。
IronPDF為Blazor開發者提供了哪些功能?
IronPDF提供了HTML轉PDF轉換、PDF編輯,以及添加頁眉、頁腳和浮水印的功能,使其成為Blazor開發者的多用途工具。
IronPDF如何改善Blazor應用的使用者體驗?
IronPDF通過啟用複雜的PDF功能提升使用者體驗,如簡便文件生成、自訂和整合,導致應用程式更加動態且具有回應性。
IronPDF如何成為Blazor應用程式全面的PDF解決方案?
IronPDF是一個全面的解決方案,因為它結合了生成、轉換和編輯的能力,當與Telerik元件一起使用時,涵蓋了Blazor應用程式中PDF處理的所有方面。
IronPDF能否在Blazor應用程式中處理大型PDF文件?
是的,IronPDF設計上可有效處理大型PDF文件,確保在Blazor應用程式中流暢的表現,並縮短加載時間。



