使用IRONPDF

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

更新 2023年十一月14日
分享:

对于开发人员来说,在很多情况下都需要以编程方式创建 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 是一款 C# PDF 库 该控件提供了一组可用于以编程方式创建 PDF 文件的类。这些类位于 "IronPdf "程序集中,旨在方便使用任何 .NET 语言,包括 C#、VB.NET、F# 等。该库提供了许多创建 PDF 文档、操作现有 PDF 和读取 PDF 的功能。

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

让我们从如何使用 IronPDF 库开始 创建 PDF 编程。

程序化创建 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 软件包管理器

打开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 文件。

访问更多 详细安装指南.

第 3 步:添加 IronPdf 命名空间

现在在程序中添加 IronPdf 命名空间。您必须在代码顶部添加一行指定的代码。

使用 IronPdf

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

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

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

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

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

IronPDF 库可以轻松处理 HTML 字符串并将其转换为 PDF 格式。让我们看看如何使用代码来实现这一功能。

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");
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");
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 文件的示例代码:

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

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

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

有时,我们需要在程序中以编程方式创建 URL 的 PDF 文件。如果我们从头开始编写代码,这可能是一项技术性很强的任务。IronPDF 提供了从 URL 创建 PDF 的出色功能,可以帮助我们解决这个问题。你可以使用任何 URL 来创建 PDF。

让我们来看看如何操作:

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://ironpdf.com/blog/using-ironpdf/csharp-generate-pdf-tutorial/").SaveAs("IronPDF Generate PDF.pdf");
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 功能。该函数可将 URL 创建为 PDF。如果尝试从头开始,这将是一项非常复杂的任务,因此 IronPDF 为开发人员提供了一个将任何 URL 转换为 PDF 的简单过程。SaveAs 功能用于将输出文件保存在 bin 文件夹中。要将文件格式设置为 PDF,必须在 SaveAs 函数中指定一个带有文件名参数的 .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 网络表单项目。建议使用最新版本的 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 文件的名称。有多个选项可用于修改和格式化,如页眉、页脚、打印选项、质量等。更多详情,请访问 链接.

输出:

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

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

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

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

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

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

  • 创建一个 C# 控制台项目。您也可以根据需要创建图形用户界面项目。您还可以打开现有项目。
  • 使用 NuGet 包管理器或 DLL 文件安装 IronPDF 库。

  • 在代码文件顶部添加 IronPDF 命名空间。

应用程序的设置工作至此完成。接下来,在 PDF 文件中添加以下代码:

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.FontFamily = "Helvetica,Arial";
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");
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.FontFamily = "Helvetica,Arial";
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");
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.FontFamily = "Helvetica,Arial"
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 文档时设置不同属性的主要工具。

  • 渲染器.渲染选项.文本头
  • 这行代码用于设置 PDF 文件的页眉。您可以通过这行代码访问页眉的更多属性。
  • 渲染器.渲染选项.文本页脚
  • 这行代码用于设置页脚属性,如文本、页脚的左右两侧、字体大小等。
  • Renderer.RenderingOptions.PaperOrientation
  • 这行代码可让用户设置 PDF 文件的页面方向。它可以指定为横向或纵向。
  • 渲染器.渲染选项.标题

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

对于最后几行,我们使用 RenderHtmlAsPdf 函数来创建 HTML String 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.9 刚刚发布

免费NuGet下载 总下载量: 10,746,704 查看许可证 >