使用IRONPDF

如何在Blazor中显示字节数组中的PDF

乔尔迪·巴尔迪亚
乔尔迪·巴尔迪亚
2023年五月8日
更新 2024年三月10日
分享:

1.导言

IronPDF for C# PDF Solutions and Documentation 是一个支持处理PDF渲染和将字节数组转换为PDF文件的C# 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 服务器应用程序模板。

    如何在 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框架

  • 点击创建按钮。
  • 如下所示,将创建一个新项目。

    如何在 Blazor 中显示字节数组中的 PDF,图 4:什么是 Blazor 及其工作原理

    什么是Blazor及其工作原理

    为了让您可以直接使用 Blazor 软件,我们制作了几个文件。

  • 启动服务器的应用程序入口是program.cs,这也是您为应用程序设置中间件和服务的地方。
  • 应用程序的主要部分称为 "App.razor"。
  • 该应用程序的一些示例网页可在页面目录中找到。
  • 本地开发环境的不同配置文件设置在属性目录下的 "launchSettings.json "文件中定义。 创建项目时,会自动分配端口号并保存到该文件中。

    启动模板程序。

Blazor 项目类型

Blazor 支持两种项目类型:Blazor Server 和 Blazor WebAssembly。

前者在服务器上运行,使用 SignalR 与浏览器通信。 这意味着应用程序的用户界面是在服务器上渲染的,浏览器只接收来自服务器的更新。 Blazor 服务器的优势在于能够支持更大型的应用程序,并能轻松处理更多用户。

Blazor WebAssembly 应用程序则完全在浏览器中运行,无需服务器即可运行。 目前,我们正在开发一种新的翻译工具,它可以让翻译更加轻便,加载速度更快,但也有一些局限性,比如无法支持较大的文件。

本教程建议使用 Blazor 服务器应用程序,因为它可以支持显示和处理 PDF 文件,而 PDF 文件可能较大。 此外,Blazor 服务器可以支持审阅和打印 PDF,这可能是 PDF 查看器应用程序的一项有用功能。

安装 IronPDF

在本节中,我们将讨论如何使用不同方法安装 IronPDF

使用命令行

在 Visual Studio 中导航到 工具 > NuGet 包管理器 > 包管理器控制台

在软件包管理器的终端选项卡中输入以下一行:

Install-Package IronPdf

现在软件包已经下载,当前项目将安装它。

如何在 Blazor 中从字节数组显示 PDF,图5:包管理器控制台 UI

包管理器控制台用户界面

使用管理 NuGet 软件包的解决方案

可在 Visual Studio 中使用 NuGet 软件包管理器用户界面将软件包直接安装到项目中。 下面的截图显示了如何打开它。

如何在Blazor中显示来自字节数组的PDF,图6:导航到NuGet包管理器

导航到NuGet包管理器

软件包管理器用户界面提供浏览功能,可显示 NuGet 网站提供的软件包库列表。输入 "IronPDF "关键字(如下截图所示),即可找到 IronPDF 软件包。

如何在Blazor中从字节数组显示PDF,图7:在NuGet包管理器UI中搜索并安装IronPDF包

在NuGet包管理器UI中搜索并安装IronPDF软件包

在NuGet包管理器的浏览部分搜索IronPDF库以找到它。

选择 IronPdf 软件包,点击 "安装 "按钮将其添加到项目中。

4.从字节阵列创建和显示 PDF

要在 Blazor 应用程序中使用 IronPDF 生成 PDF 字节数组,首先需要在项目中添加 IronPDF 依赖项。

在 Blazor 应用程序中添加 IronPDF 依赖项后,您就可以使用以下代码创建 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. 结论

该教程展示了如何使用IronPDF 功能和教程在 Blazor Server 应用程序中创建和展示 PDF 文档。首先介绍了 IronPDF 及其功能,包括如何将 HTML 转换为 PDF、添加自定义页眉和页脚以及合并多个 PDF。 然后,它提供了安装 IronPdf、在 Blazor Server 应用程序中创建 PDF 文件,然后将其转换为 PDF 字节数组并通过使用 iframe 在 Blazor PDF 查看器上显示的分步说明。

总的来说,本教程全面介绍了如何使用 IronPDF 和 Blazor 创建和显示 PDF 文档。 它鼓励读者进一步尝试使用 IronPdf 并试用不同的功能,以创建功能丰富的应用程序。

如果您有兴趣在 Blazor 项目中试用 IronPDF,可以利用IronPDF 的免费试用。 这样您就有充足的时间来尝试库的特性和功能,看看它是否能满足您的需求。

要开始,您可以参考IronPDF for Blazor文档,其中提供了有关在项目中使用该库的详细信息。 您还可以浏览IronPDF 博客和教程,了解涵盖与 PDF 操作和渲染相关的各种主题的教程和文章。

我们鼓励您花时间进一步试用 IronPDF 和 Blazor,看看它们能如何增强您的 PDF 相关开发工作。 有关Blazor PDF查看器的更多信息,请参阅以下IronPDF Blazor PDF Viewer教程

乔尔迪·巴尔迪亚
乔尔迪·巴尔迪亚
软件工程师
Jordi 最擅长 Python、C# 和 C++,当他不在 Iron Software 运用技能时,他会进行游戏编程。作为产品测试、产品开发和研究的负责人之一,Jordi 为持续的产品改进增添了极大的价值。多样化的经验让他充满挑战和参与感,他说这是他在 Iron Software 工作中最喜欢的方面之一。Jordi 在佛罗里达州迈阿密长大,并在佛罗里达大学学习计算机科学和统计学。
< 前一页
如何在C#中保存PDF文件(初学者教程)
下一步 >
如何解除PDF的安全性(初学者教程)