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

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

我們將在本文中著重於以程式化的方式填充PDF,而不是手動一個接一個地填寫PDF欄位。 當應用程式的使用者介面增強了用戶體驗,但需要電子生成PDF文件以便存檔時,這種方法變得非常有用。

一旦收集了所有用戶輸入的數據,就有必要以程式化的方式創建PDF表單。 這些填寫好的文件隨後可以保存以供將來使用或根據需要進行修改。 有幾個 Python PDF 函式庫可用於處理 PDF,包括 PyPDF2、ReportLab、IronPDF 等。 在本文中,我們將具體探討如何使用IronPDF來填寫互動式表單。

IronPDF 一個 Python 函式庫

IronPDF 是一個功能強大的 PDF 函式庫,專為 Python 開發者設計,提供他們一種直接的方法,在他們的 Python 腳本中創建、編輯和操作 PDF 文件。

開發人員可以利用 IronPDF 的全面功能集,其中包括操作文本和圖像、加密文件和實施數字簽名的功能。 透過使用IronPDF,開發者可以有效地生成高質量的PDF文件,從而提高其Python項目的價值和效率。

透過 Pip 安裝 IronPDF

IronPDF 庫可以通過 pip 添加。使用以下命令通過 pip 安裝 IronPDF:

pip install ironpdf

現在你可以將IronPDF與你的Python腳本一起使用。

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

以下是一個示例代碼片段,展示了如何使用IronPDF庫来創建和填充使用HTML標記的PDF表單。所提供的代碼從IronPDF庫中導入了必要的類。

from ironpdf import *

# Create a PDF with editable forms from HTML using form and input tags
form_html = """
<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>
"""

# Instantiate Renderer
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
renderer.RenderHtmlAsPdf(form_html).SaveAs("BasicForm.pdf")

# Read and Write PDF form values
form_document = PdfDocument.FromFile("BasicForm.pdf")

# Set and Read the value of the "firstname" field
first_name_field = form_document.Form.GetFieldByName("firstname")
first_name_field.Value = "Minnie"
print("FirstNameField value: {}".format(first_name_field.Value))

# Set and Read the value of the "lastname" field
last_name_field = form_document.Form.GetFieldByName("lastname")
last_name_field.Value = "Mouse"
print("LastNameField value: {}".format(last_name_field.Value))

form_document.SaveAs("FilledForm.pdf")
PYTHON

首先,我們通過使用 PdfDocument.RenderHtmlAsPdf 方法將標記為HTML的表單轉換為PDF表單。 RenderingOptions 屬性用於將 CreatePdfFormsFromHtml 設置為 true,這使 HTML 標記中的表單可編輯。 生成的PDF隨後會使用SaveAs方法保存到指定的輸出位置。

輸出

Python Fill Pdf Form 1 related to 輸出

其次,我們使用 PdfDocument.FromFile 方法加載創建的PDF。 通過使用 GetFieldByName 方法,我們根據各自的名稱存取指定的表單欄位。 要填充名字和姓氏的輸入欄位,我們需要對它們的屬性賦值。 最後,修改後的PDF使用 SaveAs 方法保存到新文件中。

輸出

Python Fill Pdf Form 2 related to 輸出

摘要

總之,IronPDF 是一個可靠且高效的 Python PDF 文件操作庫。 憑藉其出色的能力,可以以程式化的方式填寫PDF表格,成為自動化文檔處理工作流程中不可或缺的資產。

IronPDF提供免費試用,讓用戶在承諾前可以先探索其功能。 此外,它提供了授權選項價格實惠且靈活,套裝方案起價為 $749。