在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
IronPDF 是一个著名的 C# 库,可与 Blazor 应用程序配合使用。 本评论将指导您使用 IronPDF 在 Blazor 应用程序中嵌入 PDF 报告,展示其无缝集成和有效性。
借助强大的 IronPDF for .NET PDF 库,开发人员可以快速创建、阅读和处理 PDF 文档。 IronPDF 具有内置的 Chrome 引擎,并提供丰富而强大的功能。 其中包括将 HTML5、JavaScript、CSS 和图像转换为 PDF 的功能,为 PDF 文档添加独特页眉和页脚的功能,以及精确生成 PDF 文件的功能。 IronPdf 支持各种网络技术,包括 HTML、ASPX、Razor Pages 和 MVC 框架。
IronPDF 的主要属性如下:
Blazor 是一个 Web 应用程序框架,它使使用 Web Assembly 以 C# 和 HTML 创建客户端 Web 应用程序变得可行。
Web Assembly 应用程序以二进制指令格式发送到浏览器,可以接近原生的速度运行。 这为 C# 等语言在浏览器内运行创造了新的潜力。
首先,打开 Microsoft Visual Studio 应用程序,从文件菜单中选择 "新建项目"。 然后,选择 "Blazor Server App"。
在 Visual Studio 中创建新项目
输入项目名称并选择文件路径。 然后,点击创建按钮。
选择新 Blazor 应用程序的名称和位置
选择所需的 .NET Framework(在本教程中我们将使用 .NET 6.0),如下图所示:
在Visual Studio中使用.NET 6.0框架创建新项目
Microsoft Visual Studio 现在将生成此 Blazor 应用程序的结构。
接下来,将 IronPDF 库添加到这个新项目中。
IronPDF 库可以通过四种方式下载和安装:
Visual Studio 提供了 NuGet 包管理器,可协助将库直接安装到项目中。 下面的截图显示了如何打开 NuGet 包管理器。
访问 Visual Studio 的 NuGet 包管理器
使用 "浏览 "选项卡下的搜索栏搜索 "IronPdf",如下截图所示:
在 NuGet 包管理器 GUI 中搜索 IronPDF 库
上图显示了相关搜索结果列表。 选择所需的选项,将软件包安装到您的项目中。
在 Visual Studio 中,依次转到 工具 > NuGet 包管理器 > 包管理器控制台
在 "软件包管理器控制台 "选项卡中输入以下一行:
Install-Package IronPdf
现在将下载软件包并安装到当前项目中。
使用 NuGet 包管理器控制台安装 IronPDF 库
安装 IronPdf 库的第三种方法是直接从网站下载 NuGet 包。
导航到 IronPDF 的 NuGet 网站。
访问IronPDF网站以直接下载IronPDF包。
下载后,请按照以下步骤将软件包添加到您的项目中:
本教程中的 Blazor 应用程序将使用 IronPDF 通过 URL 获取网页的 HTML 内容,并将其转换为 PDF 文档。
在项目中包含的 .razor 文件中输入以下源代码。
@using IronPdf;
public void ExportData()
{
try
{
string fileName = "Demo.pdf";
var renderer = new IronPdf.ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
}
catch (Exception ex)
{
}
}
@using IronPdf;
public void ExportData()
{
try
{
string fileName = "Demo.pdf";
var renderer = new IronPdf.ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
}
catch (Exception ex)
{
}
}
Private IronPdf As [using]
Public Sub ExportData()
Try
Dim fileName As String = "Demo.pdf"
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata")
JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()))
Catch ex As Exception
End Try
End Sub
上面的代码片段使用两种方法从 HTML 生成 PDF 文档。 第一个是 IronPDF 的 RenderUrlAsPdf
方法,它从给定的 URL 下载 HTML 内容并将其转换为 PDF 格式。
第二种方法是静态的JSRuntime.InvokeVoidAsync
方法,它触发浏览器的JavaScript引擎在网页范围内调用JavaScript函数,将PDF内容保存到客户端的文件系统中的文件中。
该 JavaScript 函数包含在下面:
<script type="text/JavaScript">
function saveAsFile(filename, bytesBase64) {
if (navigator.msSaveBlob) {
//Download document in Edge browser
var data = window.atob(bytesBase64);
var bytes = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) {
bytes[i] = data.charCodeAt(i);
}
var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
navigator.msSaveBlob(blob, filename);
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var link = document.createElement('a');
link.download = filename;
link.href = "data:application/octet-stream;base64," + bytesBase64;
document.body.appendChild(link); // Needed for Firefox
link.click();
document.body.removeChild(link);
}
}
</script>
<script type="text/JavaScript">
function saveAsFile(filename, bytesBase64) {
if (navigator.msSaveBlob) {
//Download document in Edge browser
var data = window.atob(bytesBase64);
var bytes = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) {
bytes[i] = data.charCodeAt(i);
}
var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
navigator.msSaveBlob(blob, filename);
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var link = document.createElement('a');
link.download = filename;
link.href = "data:application/octet-stream;base64," + bytesBase64;
document.body.appendChild(link); // Needed for Firefox
link.click();
document.body.removeChild(link);
}
}
</script>
上面的 JavaScript 函数从 Blazor 接收 Base64 数据并将其转换为 blob,然后保存到客户端位置。
或者,也可以使用SaveAs
方法从ChromePdfRenderer
类将PDF文档保存到浏览器的本地存储中。
以下代码片段展示了如何将 HTML 字符串转化为文档。
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>")
前面的示例使用RenderHtmlAsPdf
实例方法将任何HTML字符串转换为PDF内容。 此外,可以在前面描述的过程中使用SaveAs
方法将此内容保存到客户端的计算机上。
在本教程中创建的Blazor PDF生成应用程序
上面的截图显示了本教程中开发的网络应用程序。 点击下载按钮将触发 C# 代码以生成 PDF 内容,并触发 JavaScript 函数以在客户端下载 PDF 内容。
本文演示了如何开发一个 Blazor Web 应用程序,该程序使用 IronPDF PDF 库从网页生成 PDF 文件。
IronPDF不是开源的,不过,免费试用密钥允许您在生产中使用而不会出现水印。