使用IRONPDF

C# 以编程方式创建 PDF 文件

更新 2024年十月2日
分享:

对于开发人员来说,需要以编程方式创建 PDF 文件的情况很多。 您可能需要在软件中以编程方式生成 PDF 报告和其他 PDF 文件。 从头开始编写代码和函数将耗时长、成本高、效率低。 这就是 IronPDF 的用武之地。 虽然在 .NET 中以编程方式创建 PDF 文件可能会令人沮丧,但幸好现在有了一种解决方案,使其变得更加易于管理。

教程涵盖的主题

本教程将涵盖以下主题:

以编程方式创建 PDF 文件的步骤

  • 步骤 1:创建 C# 项目
  • 第 2 步:安装 IronPdf 库

    • 方法 1:NuGet 软件包管理器

    • 方法 2:NuGet 软件包管理器控制台
  • 方法 3:使用 DLL 文件
  • 第 3 步:添加 IronPdf 命名空间
  • 步骤 4:以编程方式创建 PDF 文档

    • 4.1:使用 HTML 字符串以编程方式创建 PDF 文档

    • 4.2:使用 HTML 文件以编程方式创建 PDF 文档

    • 4.3:使用 URL 以编程方式创建 PDF 文档
  • 4.4:以编程方式创建带格式化的 PDF 文档
  • 摘要

IronPDF

IronPDF 是一个面向 .NET 开发人员的 C# PDF 库该工具提供了一组可用于以编程方式创建 PDF 文件的类。 这些类位于 IronPdf 程序集中,旨在方便使用任何 .NET 语言,包括 C#、VB.NET、F# 等。该库提供了许多创建 PDF 文档、处理现有 PDF 和读取 PDF 的功能。

当前版本的 IronPDF 库支持以下功能:

以编程方式创建 PDF 文件的步骤

本文将使用控制台应用程序模板进行演示。 您可以根据自己的要求和选择使用任何一种工具。您也可以使用您希望添加 PDF 文件生成工具的现有项目。

步骤 1:创建 C# 项目

本教程将使用 Visual Studio 和 C# 编程语言来构建我们的项目。 您应具备 HTML 和 C# 语言的基本知识。 此外,还建议您熟悉 Visual Studio。

我们将了解使用 IronPDF C# 库以编程方式创建 PDF 文件的多种方法。 让我们从创建一个 C# 项目开始。

  • 打开 Visual Studio。
  • 创建一个新的 C# 项目或打开一个现有项目。
  • 给项目命名。
  • 选择 .NET Core >= 3.1,因为 3.1 支持并适用于所有设备。推荐使用最新版本的 .NET Core。

    现在让我们进入第 2 步。

第 2 步:安装 IronPDF 库

在继续之前,我们应该在项目中安装 IronPDF 库。 我们可以通过多种方式做到这一点。

方法 1:NuGet 软件包管理器

我们可以从 NuGet 包管理器中安装 IronPdf C# 库。 点击工具 > NuGet 包管理器 > 管理 NuGet 包解决方案,打开 NuGet 包管理器。 这将打开 NuGet 包管理器解决方案资源管理器。

C# 以编程方式创建 PDF 文件,图 1:打开 NuGet 软件包管理器

Open NuGet 软件包管理器

点击浏览,在搜索栏中写入 IronPdf。 将出现以下结果。 选择 IronPdf 并点击安装按钮; 库将开始安装。

C# Programmatically Create PDF File, 图 2:搜索并安装 IronPdf 软件包

搜索并安装 IronPdf 软件包

方法 2:NuGet 软件包管理器控制台

我们可以使用 NuGet 包管理器控制台来轻松安装我们的库。 安装时不需要任何管理权限。 您将使用 NuGet 命令在项目中安装 IronPDF 库。

Install-Package IronPdf

C# 通过程序创建 PDF 文件,图 3:通过命令行安装 IronPdf 软件包

通过命令行安装 IronPDF 软件包

方法 3:使用 DLL 文件

在项目中使用 IronPDF 的第三种方法是添加 IronPDF 库中的 DLL 文件。 你可以下载 DLL 文件.

  • 下载 DLL 压缩文件。解压到指定文件夹。
  • 在 Visual Studio 中打开一个项目。 在 "解决方案资源管理器 "中,右键单击 "引用",浏览 IronPDF DLL 文件。

    访问更多关于如何安装 IronPDF 的详细安装指南.

第 3 步:添加 IronPdf 命名空间

现在将 IronPdf 命名空间添加到您的程序中。 您必须在代码之上添加一行给定的代码。

使用 IronPdf

这将使您能够使用 IronPDF 的功能。 您必须在希望使用 IronPDF 功能的每个文件中添加这行代码。

步骤 4:以编程方式创建 PDF 文档

我们将研究 IronPDF 提供的多种创建 PDF 的方法。 我们将看到使用简单函数创建 PDF 文件是多么容易。 让我们开始使用 HTML 字符串创建 PDF。

4.1.使用 HTML 字符串以编程方式创建 PDF

在 IronPdf 库中,HTML 用于样式设计。 您必须具备基本的 HTML 语言知识,才能使用 IronPDF 库生成 PDF 文档。

IronPDF 库可以非常轻松地处理 HTML 字符串并将其转换为 PDF 格式。 让我们来看看如何使用代码完成翻译。

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

string htmlString = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

string htmlString = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim htmlString As String = "<h1> Generated PDF File!</h1> <p> This file is generated by IronPDF library from HTML String!</p> <p>It is great Library to manipulate PDF Files.</p>"

Dim renderer = New ChromePdfRenderer()
renderer.RenderHtmlAsPdf(htmlString).SaveAs("PDF from HTML String.pdf")
VB   C#

该代码将生成一个 PDF 文件,其中包含存储在 htmlString 变量中的内容。 在本代码示例中,将Html渲染为Pdf已使用的功能。 该功能将 HTML 字符串转换为 PDF 文档。

您必须熟悉 HTML 标记,以便使用 IronPDF 库生成 PDF 文件。 我们使用 SaveAs 功能保存输出的 PDF 文件。您可以在下面看到输出的 PDF 文件。

输出:

C#以编程方式创建 PDF 文件,图 4:PDF 文件输出

PDF 文件输出

4.2.使用 HTML 文件以编程方式创建 PDF

IronPDF 库提供了从 HTML 文件创建 PDF 文件的奇妙功能。IronPdf 可直接将 HTML 文件中的所有内容(包括图片、CSS、表单等)转换为 PDF 文档。 它不需要任何其他库或函数进行进一步处理。 IronPDF 可直接将任何 HTML 文件转换为 PDF 文件。

让我们来看一些从 HTML 文件创建 PDF 文件的示例代码:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf")
VB   C#

我们使用渲染 HTMLFileAsPdf从 HTML 文件创建 PDF 的功能。 该函数是给定代码示例中使用的最重要函数。 您可以在函数参数中给出 HTML 文件的位置,也可以将 HTML 文件放在源代码的 bin 文件夹中,因此您只需在 RenderHtmlFileAsPdf 函数的参数中输入带扩展名的文件名即可。 运行此代码时,输出的 PDF 文件将保存在 bin 文件夹中。 SaveAs 功能可帮助您保存创建的 PDF 文件。

4.3.使用 URL 以编程方式创建 PDF

有时,我们需要在程序中以编程方式创建 URL 的 PDF 文件。 如果我们从头开始编码,这可能是一项技术性很强的任务。 IronPdf 提供了从 URL 创建 PDF 的出色功能,在此为我们提供了帮助。 您可以使用任何 URL 创建 PDF。

让我们来看看如何做到这一点:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf")
VB   C#

上述代码将为给定的 URL 参数创建 PDF 文件,并将其发送到将URL渲染为PDF功能。 此功能可创建 PDF 格式的 URL。 否则,如果尝试从头开始,这将是一项非常复杂的任务,因此 IronPDF 为开发人员提供了一个将任何 URL 转换为 PDF 的简单流程。 SaveAs 功能用于将输出文件保存在 bin 文件夹中。 要将文件格式设置为 PDF,您必须在 "另存为 "函数中指定带有文件名参数的 .pdf 扩展名。 您可以在项目文件夹中看到 bin 文件夹。 输出结果显示如下。

输出:

C# 通过程序创建 PDF 文件,图 5:通过 URL 创建 PDF 文件

从 URL 创建 PDF 文件

4.4.使用 ASP.NET Web 表单以编程方式创建 PDF

ASP.NET 是一个服务器端编程框架,它扩展了 HTML 的功能,支持在浏览器中进行网页开发。 ASP.NET 页面是用 HTML、CSS 和 JavaScript 编写的,可以编码为 ASPX 文件(.aspx). ASP.NET 网络表单可创建用户友好、功能丰富的网站、网上银行、内联网和会计系统。

我们将使用 IronPDF 库将 ASP.NET 网页表单转换为 PDF。 译文最初以网页形式呈现,我们将把它转换成 PDF 格式,以便在网络浏览器中查看和下载。 我们将使用 IronPDF 的 AspxToPdf 类来完成转换。

让我们来看看如何做到这一点:

  1. 在 Visual Studio 中创建一个 ASP.NET Web 表单项目。 建议使用最新版本的 Visual Studio。

  2. 根据您的选择,使用 DLL 文件的 NuGet 包管理器安装 IronPdf 库。您也可以使用 NuGet 包管理器控制台进行安装。

  3. 现在,打开您要转换为 PDF 文件的任何 apex 网页代码。在此,我们将创建项目默认 aspx 页面的 PDF 文件。

    图 6:Visual Studio 中的 Web 表单项目结构

    Visual Studio 中的 Web 表单项目结构

  4. 打开 Default.aspx.cs 文件。在文件中添加 IronPdf 命名空间,这是最重要的一行。

    使用 IronPdf;``

  5. 在 Page_Load 函数中编写以下代码行,以创建该页面的 PDF 文档。

    AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);`

    就是这样! 已创建 Aspx 网页的 PDF 文件。 运行该项目时,您将在浏览器中看到 PDF 格式的网页。 结果与按 Ctrl+P 制作 PDF 时的效果相同。在这里,您不需要按 Ctrl+P 来创建 aspx 文件的 PDF。

    这项工作是在服务器端完成的。在这段代码中,我们使用了 IronPDF 的 AspxToPdf 类。 RenderThisPageAsPdf 函数创建 Aspx 网页的 PDF。

    以上代码显示了浏览器中的 PDF 文件。 通过在 Page_Load 函数中添加以下代码行,我们可以在系统中直接下载 PDF 文件:

    AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.Attachment);

    该代码将在系统中下载 aspx 网页的 PDF 文件。 我们还可以设置 Aspx PDF 文件的名称。还有多种修改和格式化选项,如页眉、页脚、打印选项、质量等。更多详情,请访问全面的 Aspx 转 PDF 教程.

    输出:

    图 7:从服务器端渲染 PDF 文件的输出结果

    从服务器端渲染 PDF 文件的输出

    探索微软最新技术创建 PDF 文件的 Blazor 应用程序

4.4.通过格式化以编程方式创建 PDF

在创建 PDF 时,大多数问题都是在 PDF 文档的格式化过程中遇到的。 以编程方式格式化 PDF 并不容易。 不过,我们现在有了 IronPDF 这个解决方案。 IronPDF 提供各种格式化选项,使我们能够定制正在创建的 PDF 文件。 它为我们提供了添加页眉、页脚、页边距和许多其他格式选项的方法。

使用 IronPdf 使我们能够设置页面方向、页面大小和标题。 它还支持更改字体大小、字体颜色、字体类型以及其他与字体相关的操作。 您可以使用分隔线和自定义文本添加页脚和页眉。 让我们来看看如何使用 IronPDF 定制 PDF 文件。

  • 创建一个 C# 控制台项目。 您也可以根据自己的要求创建一个图形用户界面项目。 您也可以打开现有项目。
  • 使用 NuGet 软件包管理器或 DLL 文件安装 IronPdf 库。
  • 在代码文件顶部添加 IronPdf 命名空间。

    我们的应用程序设置现已完成。 接下来,在 PDF 文件中添加以下代码:

using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40);
Renderer.RenderingOptions.PrintHtmlBackgrounds = true;
Renderer.RenderingOptions.Title = "PDF Generated";
Renderer.RenderingOptions.Zoom = 100;

//Margin Setting
Renderer.RenderingOptions.MarginTop = 40;  
Renderer.RenderingOptions.MarginLeft = 20;  
Renderer.RenderingOptions.MarginRight = 20;  
Renderer.RenderingOptions.MarginBottom = 40;  

Renderer.RenderingOptions.FirstPageNumber = 1; 

//Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "Header!";
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica;

//Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial;
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"; 

string htmlStr = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>";
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "YourLicenseKey";

ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40);
Renderer.RenderingOptions.PrintHtmlBackgrounds = true;
Renderer.RenderingOptions.Title = "PDF Generated";
Renderer.RenderingOptions.Zoom = 100;

//Margin Setting
Renderer.RenderingOptions.MarginTop = 40;  
Renderer.RenderingOptions.MarginLeft = 20;  
Renderer.RenderingOptions.MarginRight = 20;  
Renderer.RenderingOptions.MarginBottom = 40;  

Renderer.RenderingOptions.FirstPageNumber = 1; 

//Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "Header!";
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica;

//Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial;
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"; 

string htmlStr = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>";
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "YourLicenseKey"

Dim Renderer As ChromePdfRenderer = New IronPdf.ChromePdfRenderer()

Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait
Renderer.RenderingOptions.SetCustomPaperSizeInInches(14, 40)
Renderer.RenderingOptions.PrintHtmlBackgrounds = True
Renderer.RenderingOptions.Title = "PDF Generated"
Renderer.RenderingOptions.Zoom = 100

'Margin Setting
Renderer.RenderingOptions.MarginTop = 40
Renderer.RenderingOptions.MarginLeft = 20
Renderer.RenderingOptions.MarginRight = 20
Renderer.RenderingOptions.MarginBottom = 40

Renderer.RenderingOptions.FirstPageNumber = 1

'Header Setting
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "Header!"
Renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica

'Footer Setting
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"

Dim htmlStr As String = "<h1>PDF Formatting!</h1><h3>Functions and properties for formatting </h3> <p>IronPDF the best ever library for PDF operations and formatting. </p>"
Renderer.RenderHtmlAsPdf(htmlStr).SaveAs("PDF-Formatted.pdf")
VB   C#

这段代码正在格式化 PDF 文件。 渲染选项是创建 PDF 文档时设置不同属性的主要工具。

  • Renderer.RenderingOptions.TextHeader
  • 这行代码用于设置 PDF 文件的页眉。 您可以通过这行代码访问页眉的更多属性。
  • Renderer.RenderingOptions.TextFooter
  • 这行代码用于设置页脚属性,如文本、页脚的左右两侧、字体大小等。
  • Renderer.RenderingOptions.PaperOrientation
  • 这行代码使用户能够设置 PDF 文件的页面方向。它可以被指定为横向或纵向。
  • Renderer.RenderingOptions.Title

    • 我们可以用这一行来设置 PDF 文件的标题。

    对于最后几行,我们使用 RenderHtmlAsPdf 函数来创建 HTML 字符串的 PDF,但我们也可以使用将 HTML 文件无缝转换为 PDF同时保留当前格式。 这是 IronPdf 的一个非常方便的功能,让您可以完全自由地定制与 PDF 文档有关的一切。

    输出:

    图 8:支持格式化的 PDF 输出

    支持格式化的 PDF 输出

摘要

本教程展示了我们如何使用 IronPDF C# 库以编程方式创建 PDF。 我们已经了解了如何从 HTML 字符串、HTML 文件、URL 和 ASP.NET 网络表单创建 PDF 文件。 有了 IronPDF 库函数,操作和格式化 PDF 文件变得非常容易。 只需几行代码就能以编程方式创建和格式化 PDF 文件。 IronPDF 是需要在软件中操作 PDF 文件的开发人员和公司的理想选择。

您可以试用免费版本进行测试,还有提供免费试用密钥该翻译不需要任何信用卡付款。 更多目前的特价优惠让您只需支付两份产品的价格即可获得 IronPDF 的五份产品.

< 前一页
如何构建C# PDF生成器
下一步 >
如何在C#中打开PDF文件

准备开始了吗? 版本: 2024.12 刚刚发布

免费NuGet下载 总下载量: 11,781,565 查看许可证 >