在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
IronPDF 是一个著名的 C# 库,可与 Blazor 应用程序配合使用。 本评论将指导您使用 IronPDF 在 Blazor 应用程序中嵌入 PDF 报告,展示其无缝集成和有效性。
借助强大的 IronPDF for .NET PDF 库,开发人员可以快速创建、阅读和处理 PDF 文档。 IronPDF 拥有内置 Chrome 浏览器引擎Node.js 提供了大量实用而强大的功能。 其中包括将 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)如下面的截图所示:
使用 .NET 6.0 Framework 在 Visual Studio 中创建新项目
Microsoft Visual Studio 现在将生成此 Blazor 应用程序的结构。
接下来,将 IronPDF 库添加到这个新项目中。
IronPDF 库可以通过四种方式下载和安装:
Visual Studio 提供了 NuGet 包管理器,可协助将库直接安装到项目中。 下面的截图显示了如何打开 NuGet 包管理器。
访问 Visual Studio 的 NuGet 包管理器
使用 "浏览 "选项卡下的搜索栏搜索 "IronPdf",如下截图所示:
在 NuGet 包管理器图形用户界面中搜索 IronPDF 库
上图显示了相关搜索结果列表。 选择所需的选项,将软件包安装到您的项目中。
在 Visual Studio 中,转到 工具 > NuGet 包管理器 > 包管理器控制台
在 "软件包管理器控制台 "选项卡中输入以下一行:
Install-Package IronPdf
现在将下载软件包并安装到当前项目中。
使用 NuGet 包管理器控制台安装 IronPDF 库
安装 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 的将URL渲染为PDF该方法可从给定的 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,然后保存到客户端位置。
或者保存为方法中的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>")
前面的示例使用了将Html渲染为Pdf将任何 HTML 字符串转换为 PDF 内容的实例方法。 此外,还可以在前面描述的程序中使用 "SaveAs "方法将这些内容保存到客户的计算机上。
本教程中创建的 Blazor PDF 生成应用程序
上面的截图显示了本教程中开发的网络应用程序。 点击下载按钮将触发 C# 代码以生成 PDF 内容,并触发 JavaScript 函数以在客户端下载 PDF 内容。
本文演示了如何开发一个 Blazor Web 应用程序,该程序使用 IronPDF PDF 库从网页生成 PDF 文件。
然而,IronPDF 并非开源软件。免费试用密钥这样,您就可以在生产中使用它,而无需水印。