使用IRONPDF

Blazor PDF 查看器教程

介绍

Adobe创建了便携式文档格式 (PDF),广泛用于发布格式化的文本和图像。 在本教程中,建议将IronPDF集成到Blazor服务器端应用程序中以显示PDF,因为它易于使用且高效。

1.IronPDF 功能

在功能强大的 IronPDF PDF for .NET 库的帮助下,开发人员可以轻松创建、阅读和修改 PDF 文档。 基于IronPDF Chrome 渲染引擎,IronPDF 包含广泛的实用和强大功能,如将 HTML5、JavaScript、CSS 和图像转换为 PDF 的能力,添加自定义页眉和页脚的能力,以及创建与网络浏览器中显示效果完全匹配的 PDF 的能力。

IronPdf 支持多种网络技术,包括 HTML、ASPX、Razor View 和 MVC。 以下是 IronPDF 的主要特点:

  • IronPDF for .NET 提供在 .NET C# 应用程序中创建和修改 PDF 文件的完全控制功能
  • IronPDF 可以使用特定的用户代理、代理、标头和 Cookie 配置从它们的 URL 生成网页的 PDF 文件
  • IronPDF 可删除现有 PDF 文档中的图像
  • IronPDF 可以向 PDF 文档添加文本、照片、书签、水印和其他元素。
  • IronPDF 具有多种功能,可以轻松合并和拆分 PDF 文档
  • IronPdf 可以理解并呈现 CSS 和 JavaScript 等网络媒体资产
  • IronPDF 支持各种 .NET 桌面和 MVC Web 应用程序框架,包括 ASP.NET 和 Blazor。

2.Blazor 是什么?

Blazor 是一个实验性的 Web 应用程序框架,它使使用 Web Assembly 以 C# 和 HTML 创建客户端 Web 应用程序成为可行。

Web Assembly 应用程序以二进制指令格式发送到浏览器,可以接近原生的速度运行。 这为 C# 等语言在浏览器内运行创造了新的潜力。

在 Visual Studio 中创建新项目

首先,打开 Microsoft Visual Studio 应用程序,从文件菜单中选择 "新建项目"。 然后,选择 "Blazor 服务器应用程序"。

Blazor PDF Viewer 教程,图 1:在 Visual Studio 中创建新项目

在 Visual Studio 中创建新项目

输入项目名称并选择文件路径。 然后,点击创建按钮。

Blazor PDF Viewer 教程,图 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 查看器教程,图 4:访问 Visual Studio 的 NuGet 软件包管理器

访问 Visual Studio 的 NuGet 包管理器

使用 "浏览 "选项卡下的搜索栏搜索 "IronPdf",如下截图所示:

Blazor PDF查看器教程,图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 Web 应用程序,该程序使用 IronPDF 库从网页生成 PDF 文件并显示在用户的浏览器中。

IronPDF 不开源; 然而,一个免费试用密钥允许您在生产环境中使用它而不会有水印。

Chipego
软件工程师
Chipego 拥有出色的倾听技巧,这帮助他理解客户问题并提供智能解决方案。他在 2023 年加入 Iron Software 团队,此前他获得了信息技术学士学位。IronPDF 和 IronOCR 是 Chipego 主要专注的两个产品,但他对所有产品的了解每天都在增长,因为他不断找到支持客户的新方法。他喜欢 Iron Software 的合作氛围,公司各地的团队成员贡献他们丰富的经验,以提供有效的创新解决方案。当 Chipego 离开办公桌时,你经常可以发现他在看书或踢足球。
< 前一页
使用 IronPDF 在 ASP.NET Core 中创建 PDF 生成器
下一步 >
使用Blazor教程创建PDF文件