如何在 Java 中填寫 PDF 表單 (教程)

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

許多人可能預期要逐項填寫 PDF 欄位,但今天我們將重點放在程式化填寫 PDF。當應用程式的用戶界面提升了用戶的體驗時,使用這種方法的情境就會出現,但它需要使用電子格式的 PDF 檔案來進行存檔。

在匯總所有用戶輸入的數據後,圖書管理員必須程式化地創建 PDF 表單。填寫後的文件要麼保存以供將來使用,要麼進行修改。市面上有多種 Java PDF 庫用於處理 PDF,例如 PDF Box、IText7、IronPDF 等。在本文中,我們將說明如何使用 IronPDF 填寫互動式表單。

IronPDF 一個Java庫

IronPDF是一個 Java PDF 庫 允許開發人員在其 Java 應用程式中輕鬆創建、編輯和操作 PDF 文檔的工具庫。該工具庫完全兼容 Java,只需幾行代碼即可集成到任何基於 Java 的項目中。

IronPDF 提供了廣泛的功能,包括文本和圖像操作支持、文檔安全性和數字簽名功能。使用 IronPDF,開發人員可以快速且輕鬆地生成專業質量的 PDF 文檔,使其成為任何基於 Java 的項目的強大工具。

使用 IronPDF 填寫 PDF 表單

讓我們看看如何使用 Java PDF 庫以程式化方式填寫 PDF 表單。

在 Maven 專案中安裝 IronPDF 安裝 IronPDF Java 在 Maven 中,請按照以下步驟操作:

  1. 打開項目中的 pom.xml 文件。

  2. >dependencies< 標籤內添加以下依賴項:

  3. 保存 pom.xml 文件,並在項目目錄中運行 "mvn install"。這將在項目中安裝 IronPDF Java 及其依賴項。您可以從以下獲取幫助 連結您現在可以將 IronPDF 用於您的 Java 代碼。

使用 Java 程式碼以程式化方式填寫 PDF 文件

以下代碼片段示範了如何使用 IronPDF 庫 建立並填寫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 void 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 规范允许在表单字段中输入。以下是输出内容:

對於第二段程式碼塊,在每個文本框或文本欄位中設置值,並在每個表單欄位中填充資料。以下是已填寫的PDF文件的截圖:

總結

總之,IronPDF 是一個可靠且高效的用來處理 Java 中 PDF 文件的庫。它能夠通過程式化方式填寫 PDF 表單,使其成為自動化文件處理任務的寶貴工具。

IronPDF 提供免費試用并 實惠的授權 最低選項為 $749,這對企業和開發者來說是一個具有成本效益的選擇。