如何在Java中填写PDF表单(教程)

This article was translated from English: Does it need improvement?
Translated
View the article in English

许多人可能希望逐个字段地填写PDF,但今天我们将重点介绍如何以编程方式填写PDF。 在应用程序的用户界面增强用户体验的情况下,可能会出现一个用例,但需要以电子格式创建PDF文件进行存档。

在整理所有用户输入的数据后,图书管理员必须以编程方式创建PDF表格。 填写好的文件要么保存以备将来使用,要么进行修改。 有多种用于 PDF 工作的 Java PDF 库,如 PDF Box、IText7、IronPDF 等。本文将介绍如何使用 IronPDF 填充交互式表单。

IronPDF — 一个Java库

IronPDF 是用于创建和编辑 PDF 的 Java PDF 库允许开发者在其Java应用程序中轻松创建、编辑和操作PDF文档。 该库与Java完全兼容,只需几行代码即可集成到任何基于Java的项目中。

IronPDF提供了广泛的功能,包括对文本和图像操作、文档安全以及数字签名功能的支持。 使用IronPDF,开发人员可以快速轻松地生成专业质量的PDF文档,使其成为任何基于Java的项目的强大工具。

使用IronPDF填写PDF表格

让我们看看如何使用Java PDF库以编程方式填写PDF表单。

在 Maven 项目中安装 IronPDF

通过 Maven 安装 IronPDF for Java请按照以下步骤进行翻译:

  1. 在项目中打开 pom.xml 文件。

  2. >dependencies< 标签中添加以下依赖:

  3. 保存 pom.xml 文件并在项目目录中运行 "mvn install"。 这将在您的项目中安装IronPDF Java及其依赖项。 您可以从IronPDF 的 Sonatype 中央资源库页面.

    现在您可以在Java代码中使用IronPDF。

使用Java代码以编程方式填充PDF文档

以下代码片段演示了如何使用IronPDF库来使用 Java 创建和填写 PDF 表单使用 HTML 标记。代码从 IronPDF 库中导入了必要的类,并使用 Paths.get 方法指定保存生成的 PDF 表单的位置。

import com.ironsoftware.ironpdf.PdfDocument;  
import com.ironsoftware.ironpdf.render.ChromePdfRenderOptions;  
import java.io.IOException;  
import java.nio.file.*;

public class App {
    public static main(String [] args) throws IOException {
        Path outputLocation = Paths.get("assets/BasicForm.pdf");  
        String formHTML = "<html>"  
            + "<body>"  
            + "<h2>Editable PDF  Form</h2>"  
            + "<form>"  
            + "First name: <br> <input type='text' name='firstname' value=''> <br>"  
            + "Last name: <br> <input type='text' name='lastname' value=''>"  
            + "</form>"  
            + "</body>"  
            + "</html>";  

        ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();  
        renderOptions.setCreatePdfFormsFromHtml(true);  
        PdfDocument.renderHtmlAsPdf(formHTML, renderOptions).saveAs(outputLocation);

        // #2 Use Case: Writing Values to the PDF Form  
        PdfDocument form = PdfDocument.fromFile(outputLocation);  

        // Set the value of the firstname input field.  
        form.getForm().setFieldValue("firstname", "Minnie");  

        // Set the value of the lastname input field.  
        form.getForm().setFieldValue("lastname", "Mouse");  

        // Save the changes to the PDF Form.  
        form.saveAs(Paths.get("assets/BasicForm_Filled.pdf"));
    }
}
JAVA

第一段代码通过使用 PdfDocument.renderHtmlAsPdf 方法,将标记在 HTML 字符串中的 HTML 表单转换为 PDF 表单。 ChromePdfRenderOptions 对象用于将 createPdfFormsFromHtml 属性设置为 true,这使得 HTML 标记中的表单可编辑。 生成的PDF文件随后会使用saveAs方法保存到指定的输出位置。

第二部分代码演示了如何填写创建的PDF表格。 PdfDocument.fromFile方法用于从指定的文件路径加载PDF表单。 getForm 方法用于访问表单字段,setFieldValue 方法用于设置 firstnamelastname 输入字段的值。 最后,使用 saveAs 方法将更改保存到一个新文件中。

输出

在第一段代码中,IronPDF 创建了一个带有两个表单字段的基本 PDF 文档。 这些表单字段是文本框。 文档的PDF规范允许在表单字段中输入。 下面是输出结果:

Java Fill Pdf Form Tutorial 1 related to 输出

对于第二个代码块,在每个文本框或文本字段中设置值,并在每个表单字段中填写数据。 这是填写好的PDF文档的截图:

Java Fill Pdf Form Tutorial 2 related to 输出

摘要

总之,IronPDF是一个可靠且高效的Java PDF文档处理库。 它能够以编程方式填写PDF表格,使其成为自动化文档处理任务的宝贵工具。

IronPDF提供免费试用和IronPDF Java 经济实惠的许可选项我们的翻译服务起价为 $749,是企业和开发人员的高性价比之选。