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

查克尼思·賓
查克尼思·賓
2023年2月14日
已更新 2024年10月20日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

許多人可能會期望逐個字段填寫 PDF,但今天我們將重點放在以程式化方式填寫 PDF。 在應用程式 UI 增強用戶體驗的情況下,可能會出現一個用例,但需要以電子格式創建 PDF 文件以用於存檔。

在整理所有用戶輸入的資料後,圖書館員必須以程式化的方式創建 PDF 表單。 填寫的文件將保存以供將來使用或修改。 有多個 Java PDF 庫用於 PDF 工作,例如 PDF Box、IText7、IronPDF 等。在本文中,我們將解釋如何使用 IronPDF 填寫互動表單。

IronPDF 一個 Java 函式庫

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

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

使用 IronPDF 填寫 PDF 表格

讓我們來看看如何使用Java PDF庫以程式設計的方式填寫PDF表格。

在 Maven 專案中安裝 IronPDF

通過 Maven 安裝 IronPDF Java,請按照以下步驟操作:

  1. 打開專案中的 pom.xml 檔案。

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

  3. 保存 pom.xml 文件並在您的項目目錄中運行 "mvn install"。 這將在您的項目中安裝 IronPDF Java 及其依賴項。 您可以從IronPDF 的 Sonatype Central Repository 頁面獲得幫助。

    現在您可以在您的Java代碼中使用IronPDF。

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

以下程式碼片段展示了如何使用 IronPDF 庫透過 HTML 標記來建立和填寫具有 Java 的 PDF 表單。程式碼從 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 標記的表單字符串轉換為 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,使其成為企業和開發者具成本效益的選擇。

查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。