如何在Blazor中显示字节数组PDF
1.简介
IronPDF for C# PDF Solutions and Documentation 是一个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查看器中显示它们。
如何在 Blazor 中通过字节数组显示 PDF
- 下载 C# 库,在 Blazor 中从字节显示 PDF
- 利用
RenderUrlAsPdf方法将所需 URL 呈现为 PDF 文件 - 访问PDF字节数组并将其转换为base64数据类型
- 在Blazor页面上显示base64 PDF
- 使用
RenderHtmlAsPdf方法将 HTML 转换为 PDF 并显示出来
2. 要求
要跟随本教程,您需要以下工具和要求:
- Visual Studio 2019或更新版本:需要创建和运行Blazor应用程序。 可以从Visual Studio官方网站下载
- .NET 5.0或更高版本:需要构建和运行Blazor应用程序。 可以从官方.NET下载页面下载
- IronPDF:这是将用于将PDF字节数组转换为PDF文档并在Blazor PDF查看器中显示的专业级UI库。 可以从IronPDF官方网站下载
IronPDF.BlazorNuGet包:这是将用于将IronPDF与Blazor应用程序集成的NuGet包。 可以从Visual Studio中的NuGet包管理器安装。
本教程中讨论的某些功能可能需要IronPDF的付费版本。 此外,本教程假定您对Blazor和C#有基本了解。
3. 创建Blazor应用程序
在开始构建我们的第一个Blazor应用程序之前,我们必须创建一个新的Visual Studio项目。
- 打开Visual Studio。
- 单击"创建新项目"。
- 选择Blazor服务器应用程序模板。
在Visual Studio中创建新项目
- 选择"下一步"选项。
- 命名您的应用程序。
在Visual Studio中命名新项目
- 选择"下一步"选项。
- 选择.NET Framework。
为新的Blazor Server应用程序选择.NET 6.0框架
- 单击创建按钮。
- 将创建一个新项目,如下所示。
Visual Studio中的初始项目视图
生成了几个文件,为您提供一个可供大概使用的简单Blazor软件。
- 启动服务器的应用程序入口点是
program.cs,您还可以在其中设置中间件和服务。 - 应用程序的主要部分称为"App.razor"。
- 应用程序的一些示例网页可以在"Pages"目录中找到。
- 本地开发环境的不同配置文件设置在"Properties"目录下的"launchSettings.json"文件中定义。 项目创建时,自动分配并保存一个端口号到此文件。
启动模板程序。
Blazor项目类型
Blazor支持两种项目类型:Blazor服务器和Blazor WebAssembly。
前者在服务器上运行,并使用SignalR与浏览器通信。 这意味着应用程序的UI在服务器上呈现,而浏览器仅从服务器接收更新。 Blazor服务器的优点是能够支持更大的应用程序,并且可以轻松处理更多用户。
另一方面,Blazor WebAssembly应用程序完全在浏览器中运行,并且不需要服务器运行。 这使得它们更轻量化,加载速度更快,但它们也有一些限制,比如无法支持更大的文件。
本教程建议使用Blazor服务器应用程序,因为它可以支持显示和处理可能较大的PDF文件。 此外,Blazor服务器还可以支持查看和打印PDF,这可能是PDF查看器应用程序的一个有用功能。
安装 IronPDF。
在本节中,我们将讨论如何使用不同的方法安装IronPDF。
使用命令行
在Visual Studio中导航到工具 > NuGet包管理器 > 包管理器控制台。
在包管理器的终端选项卡中输入以下行:
Install-Package IronPdf
现在软件包已下载,将安装在当前项目中。
包管理器控制台UI
使用"管理解决方案的NuGet包"
NuGet包管理器UI可用于在Visual Studio中将软件包直接安装到项目中。 下面的截图显示了如何打开它。
导航到 NuGet 包管理器
包管理器UI提供了一个浏览功能,显示了NuGet网站上提供的软件包库列表。输入"IronPDF"关键词,如下截图所示,以查找IronPDF包。
在NuGet包管理器UI中搜索和安装IronPDF包
在NuGet包管理器中通过在浏览部分中搜索找到IronPDF库。
选择IronPDF包并单击"安装"按钮以将其添加到项目中。
4. 从字节数组创建和显示PDF
要在Blazor应用程序中使用IronPDF生成PDF字节数组,首先需要将IronPDF依赖项添加到您的项目中。
将IronPDF依赖项添加到Blazor应用程序后,可以使用以下代码创建PDF文档:
// Placeholder for the URL used to generate the PDF
string _url = "";
// Method to render a URL as a PDF and convert the result to a base64 string
private async Task ViewFile()
{
var renderer = new IronPdf.ChromePdfRenderer();
// Render the specified URL as a PDF
var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
// Convert the PDF stream to a base64 string
_url = $"data:application/pdf;base64,{Convert.ToBase64String(pdf.Stream.ToArray())}";
}// Placeholder for the URL used to generate the PDF
string _url = "";
// Method to render a URL as a PDF and convert the result to a base64 string
private async Task ViewFile()
{
var renderer = new IronPdf.ChromePdfRenderer();
// Render the specified URL as a PDF
var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
// Convert the PDF stream to a base64 string
_url = $"data:application/pdf;base64,{Convert.ToBase64String(pdf.Stream.ToArray())}";
}上述代码片段利用了IronPDF的RenderUrlAsPdf方法,该方法从指定的URL下载HTML文本并将其转换为PDF格式。 然后通过将PDF流转换为base64格式并存储在本地变量中,将生成的PDF材料呈现为未处理的base64数据字符串。
应用程序可以使用IronPDF的SaveAs功能,该功能在每个ChromePdfRenderer实例上可用,将创建的PDF文件保存到服务器的文件系统中以便稍后访问。
接下来的代码部分将base64 PDF数据准备为输出到客户端的浏览器中:
@if (_url != string.Empty)
{
// Render the PDF base64 data as a PDF in an iframe
<iframe src="@_url" width="100%" height="500px"></iframe>
}@if (_url != string.Empty)
{
// Render the PDF base64 data as a PDF in an iframe
<iframe src="@_url" width="100%" height="500px"></iframe>
}此代码片段将base64数据绑定到iframe元素的src属性。 这使得浏览器在页面加载时就使用它们内置的Web查看器将Base64内容呈现为适当的PDF文档。
以下是从base64字符串生成的PDF文件的图像。
在浏览器中查看在Blazor应用程序中生成的PDF
创建简单的PDF文件
这是一个使用IronPDF在C#中创建简单PDF文档的示例代码片段:
// Create a simple PDF document with the text "Hello world!!"
var pdfDocument = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Hello world!!");// Create a simple PDF document with the text "Hello world!!"
var pdfDocument = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Hello world!!");使用前一部分中描述的方法,可以使用客户端的浏览器查看创建的PDF文档。
6.结论
本教程展示了如何使用IronPDF功能和教程在Blazor服务器应用程序中创建和显示PDF文档。首先介绍了IronPDF及其功能,包括如何将HTML转换为PDF,添加自定义页眉和页脚,以及合并多个PDF。 然后提供了安装IronPDF、在Blazor服务器应用程序中创建PDF文件然后将其转换为PDF字节数组,并通过使用iframe在Blazor PDF查看器上显示它的详细说明。
总体来说,本教程全面介绍了如何与IronPDF和Blazor合作来创建和显示PDF文档。 鼓励读者进一步尝试IronPDF并尝试不同的功能以创建功能丰富的应用程序。
如果您有兴趣在您的Blazor项目中尝试IronPDF,可以利用IronPDF的免费试用版。 这为您提供了充足的时间来试验库的功能和特性,并查看它是否符合您的需求。
要开始,请参阅IronPDF的Blazor文档,其中提供了有关在项目中使用库的详细信息。 您还可以浏览IronPDF博客和教程,查找涵盖与PDF处理和渲染相关的一系列主题的教程和文章。
我们鼓励您花时间进一步尝试IronPDF和Blazor,并看看它们如何增强您的PDF相关开发工作。 有关Blazor PDF查看器的更多信息,请参考以下IronPDF Blazor PDF查看器教程。
常见问题解答
如何在Blazor应用程序中从字节数组显示PDF?
您可以使用IronPDF将字节数组转换为base64字符串,然后将此字符串绑定到Blazor应用程序中iframe的'src'属性。此方法利用浏览器内置的PDF查看器来显示文档。
使用Blazor Server比Blazor WebAssembly处理PDF有何优势?
建议使用Blazor Server处理PDF,因为它可以更有效地处理较大的文件,并支持PDF审核和打印等功能,这对于全面的PDF查看器应用程序至关重要。
如何将IronPDF集成到Blazor项目中?
您可以通过下载IronPDF库并使用Visual Studio的NuGet包管理器将其添加到Blazor项目中。在包管理器控制台中可以使用命令Install-Package IronPdf。
我可以在Blazor应用程序中将URL转换为PDF吗?
是的,使用IronPDF的RenderUrlAsPdf方法,您可以在Blazor应用程序中将指定URL的内容转换为PDF格式。
是否可以在Blazor应用程序中以编程方式创建PDF?
是的,使用IronPDF的RenderHtmlAsPdf方法,您可以通过将HTML内容呈现为PDF文档以编程方式创建PDF。
在Blazor项目中使用IronPDF需要哪些工具?
在Blazor项目中使用IronPDF,您需要Visual Studio 2019或更高版本、.NET 5.0或更高版本,以及IronPDF NuGet包。对Blazor和C#的基本理解也很有帮助。
如何在Blazor PDF查看器中处理文件上传和下载?
IronPDF支持在Blazor PDF查看器中进行文件上传和下载。通过集成该库,您可以使用C#代码和Blazor组件创建一个高效处理PDF的Web应用程序。
我可以在Blazor应用程序中合并多个PDF吗?
是的,IronPDF提供了合并多个PDF的功能。可以通过使用其方法将不同的PDF文档合并成一个文件在Blazor应用程序中。
IronPDF有免费试用版吗?
是的,IronPDF 提供免费试用,允许开发者探索其功能以确保符合需求再购买。
在哪里可以找到更多关于在Blazor中使用IronPDF的资源?
IronPDF文档、博客和教程中可以找到更多关于在Blazor中使用IronPDF的资源。这些资源提供了关于在Blazor应用程序中实现PDF功能的全面指导。
IronPDF 是否兼容 .NET 10?这会对 Blazor 从字节数组显示 PDF 产生什么影响?
是的——IronPDF 完全兼容 .NET 10,可直接支持面向 .NET 10 的项目。在 .NET 10 下使用 Blazor 时,性能提升(例如降低内存分配开销和增强异步功能)有利于将字节数组转换为 PDF 并将其流式传输到客户端等操作。







