使用IRONPDF

使用C#编程填充PDF表单(编码教程)

更新 2024年二月8日
分享:

本教程将演示如何以编程方式与 PDF 文件中的表单进行交互。

市场上有多种 .NET 库可以让我们用 C# 编程填写 PDF 表单。其中有些很难理解,有些需要付费。

IronPDF 是最好的 .NET Core 库,因为它简单易懂,而且开发免费。除了填写 PDF 表格此外,IronPDF 还允许从 HTML 字符串、HTML 文件和 URL 创建新的 PDF。

让我们看看如何使用 C# 以编程方式填写 PDF 表单。首先,我们将创建一个控制台应用程序用于演示,但你也可以根据自己的要求使用任何应用程序。

创建一个 Visual Studio 项目

打开 Microsoft Visual Studio。点击创建新项目 > 从模板中选择控制台应用程序 > 按下一步 > 给项目命名。按下一步 > 选择目标框架。单击创建按钮。创建的项目如下所示。

用 C# 编程填写 PDF 表单(编码教程),图 1:在 Visual Studio 中新建的控制台应用程序

在 Visual Studio 中新建一个控制台应用程序

安装 IronPDF 库

如前所述,本教程将使用 IronPDF 库。使用这个 .NET 库的主要原因是,它可以免费用于开发,并在一个库中提供所有功能。

转到软件包管理器控制台。键入以下命令

Install-Package IronPdf

该命令将为我们安装 IronPDF 库。接下来,让我们开始编码。

阅读 PDF 文档

填写 PDF 表单的第一步是阅读 PDF 文档。显然,如果不先阅读,我们怎么能填写表格呢?下面的 PDF 文档将用于演示。您可以下载 从这里您也可以使用自己的文件。

用 C# 编程填写 PDF 表单(编码教程),图 2:填写 PDF 表单的示例文件

填写表格的 PDF 样本文件

读取该文件的代码是

PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
VB   C#

内传递 PDF 文档的完整路径。 从文件 方法。这将从本地系统读取 PDF 文件。

获取 PDF 表格

编写以下代码,从加载的 PDF 文档中获取表单。

var form = doc.Form;
var form = doc.Form;
Dim form = doc.Form
VB   C#

获取表格字段

要获取表单字段以设置其值,IronPDF 提供了两种方法:通过字段名或通过索引访问表单字段,从而使获取表单字段变得非常简单。让我们逐一讨论这两种方法。

按名称获取表单字段

以下代码将按名称获取字段:

var  field = form.GetFieldByName("First Name");
var  field = form.GetFieldByName("First Name");
Dim field = form.GetFieldByName("First Name")
VB   C#

"(《世界人权宣言》) GetFieldByName 方法将字段名作为参数。该方法具有容错性,会尝试匹配大小写错误和不完整的字段名。

按索引获取表单字段

我们还可以通过索引获取 PDF 表单字段。索引从零开始。以下示例代码用于通过索引获取表单字段。

var field = form.Fields [0];
var field = form.Fields [0];
Dim field = form.Fields (0)
VB   C#

填写 PDF 表格

接下来,让我们把所有代码组合起来,填写 PDF 表单。

PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
var form = doc.Form;
form.Fields [0].Value = "John";
form.Fields [1].Value = "Smith";
form.Fields [2].Value = "+19159969739";
form.Fields [3].Value = "John@email.com";
form.Fields [4].Value = "Chicago";
doc.SaveAs(@"D:\myPdfForm.pdf");
PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
var form = doc.Form;
form.Fields [0].Value = "John";
form.Fields [1].Value = "Smith";
form.Fields [2].Value = "+19159969739";
form.Fields [3].Value = "John@email.com";
form.Fields [4].Value = "Chicago";
doc.SaveAs(@"D:\myPdfForm.pdf");
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
Dim form = doc.Form
form.Fields (0).Value = "John"
form.Fields (1).Value = "Smith"
form.Fields (2).Value = "+19159969739"
form.Fields (3).Value = "John@email.com"
form.Fields (4).Value = "Chicago"
doc.SaveAs("D:\myPdfForm.pdf")
VB   C#

上面的示例代码将按索引值填写表格字段。您也可以使用前面提到的字段名进行同样的操作。让我们运行程序看看输出结果。

填好的 PDF 表格

用 C# 编程填写 PDF 表单(编码教程),图 3:

PDF 样本文件中已填写的表格

您可以看到,该库可以用最简单的代码填写 PDF 表单,无需复杂的逻辑。这就是推荐使用 IronPDF 的原因。

假设您还没有任何带有表单的 PDF 文档--不用担心,IronPDF 可为以下文档提供全面支持 生成 PDF 表格.请按照以下步骤操作:

生成新的 PDF 表单文件

创建新的 HTML 文件

新建一个 HTML 文件并粘贴以下代码:

<!DOCTYPE html>
<html>
<body>

<h2>PDF Forms</h2>

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" ><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" ><br>
  <label for="contact">Contact #:</label><br>
  <input type="text" id="contact" name="contact" ><br>
  <label for="email">Email:</label><br>
  <input type="text" id="email" name="email"><br>
  <label for="city">City:</label><br>
  <input type="text" id="city" name="city"><br>

</form> 
</body>
</html>
<!DOCTYPE html>
<html>
<body>

<h2>PDF Forms</h2>

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" ><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" ><br>
  <label for="contact">Contact #:</label><br>
  <input type="text" id="contact" name="contact" ><br>
  <label for="email">Email:</label><br>
  <input type="text" id="email" name="email"><br>
  <label for="city">City:</label><br>
  <input type="text" id="city" name="city"><br>

</form> 
</body>
</html>
HTML

保存此 HTML 示例文件。您可以根据自己的表单要求自定义 HTML。

接下来,在 C# 程序中编写以下代码。

var renderer = new ChromePdfRenderer();
var file = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
file.SaveAs(@"D:\myForm.pdf");
var renderer = new ChromePdfRenderer();
var file = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
file.SaveAs(@"D:\myForm.pdf");
Dim renderer = New ChromePdfRenderer()
Dim file = renderer.RenderHtmlFileAsPdf("D:\myForm.html")
file.SaveAs("D:\myForm.pdf")
VB   C#

运行程序,查看生成的 PDF 表单文档。

用 C# 编程填写 PDF 表单(编码教程),图 3:从 HTML 文件生成的 PDF 表单

由 HTML 文件生成的 PDF 表格

摘要

以编程方式自动填写 PDF 表单非常重要。本文建议使用 IronPDF 在 C# 中填写 PDF 表单,这是最简单的方法。此外,你还学会了如何 生成新的 PDF 表格 从零开始

此外,IronPDF 还为开发人员提供了以下方法 提取文本和内容 从 PDF 文件、 渲染图表 PDF 格式、 插入条形码, 用密码加强安全水印 编程。

还有其他许多有用的库,如处理条形码的 IronBarcode、处理 Excel 文档的 IronXL 和处理 OCR 的 IronOCR。购买完整的 Iron 套件,只需两个库的价格就能获得所有五个库。请访问 许可页面 了解更多详情。

< 前一页
如何将多页扫描成一个 PDF 文件
下一步 >
如何使用C#在ASP.NET中生成PDF

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

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