跳過到頁腳內容
使用 IRONPDF FOR PYTHON

如何在 Python 中生成 PDF 表單

本教學將探討如何使用此程式庫建立 PDF 表單、建立新的 PDF 檔案以及將互動式表單與資料明確分組。

使用 Python 建立互動式 PDF 表單

  1. 安裝 PDF 庫以產生 PDF 表單。
  2. 從 HTML 字串建立 PDF 表單並儲存 PDF 文件。
  3. 使用PdfDocument類別上傳建立的 PDF 檔案。
  4. 更新 PDF 文件欄位。
  5. 將文件儲存到新位置。

IronPDF。

Python 是一種程式語言,可以幫助使用者快速、簡單地創建圖形使用者介面。 對於程式設計師來說,Python 也比其他語言更具動態性。 因此,將 IronPDF 庫添加到 Python 中是一個簡單的過程。 預先安裝了大量工具,例如PyQtwxWidgetsKivy以及許多其他軟體包和庫,可用於快速安全地建立完整的 GUI。

IronPDF for Python 結合了 .NET Core 等其他框架的多種功能。 有關更多信息,請點擊以下IronPDF for Python 的官方網頁

使用 IronPDF 可以簡化 Python 網頁設計和開發。 因此,三種 Python Web 開發範式——Django、Flask 和 Pyramid——獲得了廣泛認可。 Reddit、Mozilla 和 Spotify 等網站和線上服務都採用了這些框架。

IronPDF。 功能。

  • 使用 IronPDF,可以從多種格式產生 PDF,包括 HTML、HTML5、ASPX 和 Razor/MVC View。 它可以將圖像轉換為 PDF 格式,並將HTML 頁面轉換為 PDF 文件
  • IronPDF 工具包可以幫助完成以下任務:建立互動式 PDF、填寫和提交互動式表單合併分割PDF 文件、提取文字和圖像、在 PDF 文件中搜尋文字、將 PDF 柵格化為圖像、更改字體大小、邊框和背景顏色以及轉換 PDF 文件。 IronPDF 提供 HTML 登入表單驗證,支援使用者代理、代理、cookie、HTTP 標頭和表單變數。 IronPDF 使用使用者名稱和密碼允許使用者存取受保護的文件
  • 只需幾行程式碼,我們就可以從各種來源(包括字串、串流或 URL)列印 PDF 檔案。 IronPDF 讓我們可以建立扁平化的 PDF 文件

安裝 Python

環境配置

請確認您的電腦上已安裝 Python。 若要下載並安裝與您的作業系統相容的最新版 Python,請造訪Python 官方網站。 安裝完 Python 後,建立一個虛擬環境來隔離專案所需的依賴項。 借助venv模組,您的轉換專案可以擁有一個整潔、獨立的工作空間,該模組使您能夠創建和管理虛擬環境。

PyCharm 中的新項目

本文推薦使用 PyCharm 作為 Python 程式碼開發的 IDE。

PyCharm IDE啟動後,選擇"新建專案"。

如何在 Python 中產生 PDF 表單,圖 1:PyCharm PyCharm

選擇"新建項目"後,將開啟一個新窗口,您可以在其中指定項目的環境和位置。 您或許會發現下圖更容易理解。

如何在 Python 中產生 PDF 表單,圖 2:新項目 新專案

選擇專案位置和環境路徑後,按一下"建立"按鈕啟動新專案。 然後,可以使用隨後出現的新視窗來建立軟體。 本指南使用的是 Python 3.9。

如何在 Python 中產生 PDF 表單,圖 3:建立項目 創建專案

IronPDF。庫要求

大多數情況下,Python 模組 IronPDF 使用 .NET 6.0。因此,要將 IronPDF 與 Python 一起使用,必須在您的電腦上安裝 .NET 6.0 執行階段。 Linux 和 Mac 使用者可能需要先安裝 .NET 才能使用此 Python 模組。 請造訪此頁面以取得所需的執行環境。

IronPDF。庫設定

若要產生、修改和開啟副檔名為".pdf"的文件,必須安裝"ironpdf"軟體包。 開啟終端機窗口,輸入以下指令在 PyCharm 中安裝軟體包:

pip install ironpdf

下面截圖顯示了'ironpdf'軟體包的安裝過程。

如何在 Python 中產生 PDF 表單,圖 4:IronPDF IronPDF

產生 PDF 表單

透過 IronPDF,可以輕鬆建立互動式 PDF 表單。 下面展示了一個包含收音機演示的範例 PDF 表單,只需幾行程式碼即可完成。

如何在 Python 中產生 PDF 表單,圖 5:PDF 表單範例首頁 PDF 表格範本首頁

上述 HTML 程式碼將作為字串,用於在以下程式碼中建立 PDF 表單。

from ironpdf import ChromePdfRenderer, PdfDocument

# Define HTML string to construct the form
form_data = """
<html>
    <body>
        <table>
            <tr>
                <td>Name</td>
                <td><input name="name" type="text"/></td>
            </tr>
            <tr>
                <td>Age</td>
                <td><input name="age" type="text"/></td>
            </tr>
            <tr>
                <td>Gender</td>
            </tr>
            <tr>
                <td><input name="Gender" type="radio">Male</input></td>
                <td><input name="Gender" type="radio">Female</input></td>
            </tr>
        </table>
    </body>
</html>"""

# Step 1: Create PDF Form from HTML string
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
# Render HTML to PDF and save it
renderer.RenderHtmlAsPdf(form_data).SaveAs("DemoForm.pdf")

# Step 2: Reading and Writing PDF form values
form_document = PdfDocument.FromFile("DemoForm.pdf")

# Find the 'name' field and update its value
name_field = form_document.Form.FindFormField("name")
name_field.Value = "Mike"
print(f"NameField value: {name_field.Value}")

# Find the 'age' field and update its value
age_field = form_document.Form.FindFormField("age")
age_field.Value = "21"
print(f"AgeField value: {age_field.Value}")

# Update the first 'Gender' radio field, assuming it's the male option
gender_field = form_document.Form.Fields[3]
gender_field.Value = "On"

# Save the updated PDF to a new file
form_document.SaveAs("UpdatedForm.pdf")
from ironpdf import ChromePdfRenderer, PdfDocument

# Define HTML string to construct the form
form_data = """
<html>
    <body>
        <table>
            <tr>
                <td>Name</td>
                <td><input name="name" type="text"/></td>
            </tr>
            <tr>
                <td>Age</td>
                <td><input name="age" type="text"/></td>
            </tr>
            <tr>
                <td>Gender</td>
            </tr>
            <tr>
                <td><input name="Gender" type="radio">Male</input></td>
                <td><input name="Gender" type="radio">Female</input></td>
            </tr>
        </table>
    </body>
</html>"""

# Step 1: Create PDF Form from HTML string
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
# Render HTML to PDF and save it
renderer.RenderHtmlAsPdf(form_data).SaveAs("DemoForm.pdf")

# Step 2: Reading and Writing PDF form values
form_document = PdfDocument.FromFile("DemoForm.pdf")

# Find the 'name' field and update its value
name_field = form_document.Form.FindFormField("name")
name_field.Value = "Mike"
print(f"NameField value: {name_field.Value}")

# Find the 'age' field and update its value
age_field = form_document.Form.FindFormField("age")
age_field.Value = "21"
print(f"AgeField value: {age_field.Value}")

# Update the first 'Gender' radio field, assuming it's the male option
gender_field = form_document.Form.Fields[3]
gender_field.Value = "On"

# Save the updated PDF to a new file
form_document.SaveAs("UpdatedForm.pdf")
PYTHON

在上面的範例中,建立了一個ChromePdfRenderer()對象,並將RenderingOptions.CreatePdfFormsFromHtml RenderHtmlAsPdf值設為True ,從而啟用 PDF 檔案中的表單。 RenderHtmlAsPdf 方法用於將 HTML 字串作為參數傳遞。

借助SaveAs方法,可以根據 HTML 字串建立 PDF 文件,其中包含一個 PDF 表單,該表單如下圖所示,並且最初是空的。 IronPDF再次更新了PDF表單中的欄位。 在 PDF 檔案中,前兩個欄位是文字輸入框,另一個欄位是單選按鈕。

如何在 Python 中產生 PDF 表單,圖 6:PDF 表單 PDF Form

接下來,使用同一個PdfDocument物件上傳現有的 PDF 表單。 使用Form.FindFormField方法,可以從元素名稱取得值,或者可以透過將元素索引傳遞到陣列值中使用Form.Fields[] 。 這些屬性可讓您取得和設定 PDF 表單中元素的值。 最後,觸發SaveAs函數,將更新/新的 PDF 檔案儲存到指定位置。

如何在 Python 中產生 PDF 表單,圖 7:上傳 PDF 表單 上傳 PDF 表單

以上是程式碼的運行結果,程式碼用於填寫 PDF 表單。 要了解有關 PDF 表單的更多信息,請參閱以下範例頁面

結論

IronPDF 庫提供強大的安全技術來降低風險並確保資料安全。 它不局限於任何特定瀏覽器,並且兼容所有主流瀏覽器。 IronPDF 只需幾行程式碼,就能讓程式設計師快速產生並讀取 PDF 檔案。 IronPDF 庫提供一系列許可選項,以滿足開發人員的各種需求,包括免費的開發人員許可證和可以購買的額外開發許可證。

$799 Lite 套餐包含永久許可證、30 天退款保證、一年軟體維護和升級選項。 首次購買後無需支付其他費用。 這些許可證可用於開發、測試和生產環境。 此外,IronPDF 還提供一些有時間和再分發限制的免費許可證。 使用者可以在免費試用期內體驗產品的實際使用效果,而不會看到浮水印。 請點擊以下許可頁面,以了解更多關於 IronPDF 試用版的價格以及如何獲得許可的資訊。

常見問題解答

如何使用 Python 產生 PDF 表單?

您可以使用 IronPDF 在 Python 中生成 PDF 表單,方法是寫入 HTML 字串來定義表單結構,並使用 ChromePdfRenderer 將此 HTML 轉換成 PDF 表單。確保啟用 CreatePdfFormsFromHtml 選項來使表單具有互動性。

在 Python 中更新 PDF 表單中欄位的流程是什麼?

要使用 IronPDF 更新 PDF 表單中的欄位,請將 PDF 載入 PdfDocument 物件中。然後,使用 Form.FindFormFieldForm.Fields 來尋找特定的表單欄位。為這些欄位設定所需的值,並儲存修改後的文件。

哪些 Web 開發框架與 Python 的 PDF 函式庫相容?

IronPDF 兼容流行的 Python Web 框架,如 Django、Flask 和 Pyramid,可以無縫集成到各種 Web 應用程式中。

在網頁開發中使用 PDF 函式庫有哪些好處?

在 Web 開發中使用 IronPDF 之類的 PDF 函式庫,可以將 HTML、圖片和其他格式轉換為 PDF、處理互動表單、合併和分割文件、抽取文字,並確保文件存取的安全性,從而增強 Web 應用程式的整體功能。

Python PDF 函式庫需要哪些安裝步驟?

要在 Python 環境中安裝 IronPDF,首先確保已安裝 Python 和 .NET 6.0 runtime。然後,使用 pip 將 IronPDF 套件新增至您的專案,最好使用像 PyCharm 之類的 IDE。

我可以安全地使用 PDF 函式庫嗎?

是的,IronPDF 包含密碼保護和存取憑證等安全功能來保護 PDF 文件,因此適合在安全的環境中使用。

Python PDF 函式庫提供哪些授權選項?

IronPDF 提供彈性的授權選項,包括免費開發人員授權、30 天退款保證的永久授權,以及維護選項,適用於開發、暫存和生產環境。

在 Python 中使用 PDF 函式庫時,建議使用何種 IDE?

建議使用 PyCharm 在 Python 中使用 IronPDF,它提供了一個強大的環境,其功能有助於專案管理和程式碼開發。

Python PDF 函式庫有試用版嗎?

是的,IronPdf 提供不帶水印的免費試用版,讓開發人員可以在承諾購買之前,評估其在實際情境中的功能。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。