如何使用 IronPDF 在 C# 中建立 PDF 表單

如何在 C# 中建立 PDF 表單

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

利用 IronPDF 功能齊全的 API,僅需幾行程式碼即可在 C# 中建立互動式 PDF 表單,支援文字輸入、核取方塊、單選鈕、下拉式選單、圖片表單及數位簽章。

快速入門:使用 IronPDF 建立您的第一個 PDF 表單

立即使用 IronPDF 快速建立互動式、可填寫的 PDF 表單。 本指南將向您展示如何使用簡單的 C# 程式碼,動態產生包含表單欄位的 PDF 檔案。 透過 IronPDF 強大的 API,您可以輕鬆建立文字輸入框、核取方塊等元件,以最少的努力提升使用者互動體驗。 請繼續閱讀,了解定義表單元素並節省文件儲存時間。

  1. using NuGet 套件管理員安裝 https://www.nuget.org/packages/IronPdf

    PM > Install-Package IronPdf
  2. 請複製並執行此程式碼片段。

    new IronPdf.ChromePdfRenderer { RenderingOptions = { CreatePdfFormsFromHtml = true } }
        .RenderHtmlAsPdf("<html><body><form>First name: <input type='text' name='firstname' value=''>Last name: <input type='text' name='lastname' value=''></form></body></html>")
        .SaveAs("editableForm.pdf");
  3. 部署至您的生產環境進行測試

    立即透過免費試用,在您的專案中開始使用 IronPDF

    arrow pointer


如何使用 IronPDF 建立 PDF 表單?

IronPDF 可建立內嵌各類表單欄位的 PDF 文件。透過在靜態 PDF 文件中加入動態表單元素,您能提升文件的靈活性與互動性。 此函式庫支援現代 PDF 應用程式所需的所有表單元素,從簡單的文字輸入欄位到複雜的簽名欄位皆涵蓋其中。 在建立表單之前,請確認您已安裝 IronPDF 並設定好開發環境。

如何新增文字輸入區塊和表單?

如何將 HTML 表單轉為可渲染格式?

建立文字輸入區和表單,以便在 PDF 文件中擷取使用者輸入內容。 文字區塊提供容納較多文字的空間,而輸入表單則允許輸入特定數值。 IronPDF 的 HTML 轉 PDF 轉換引擎支援 HTML 表單元素,可簡化複雜表單的建立流程。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-input-textarea.cs
using IronPdf;

// Input and Text Area forms HTML
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=''> <br>
            Address: <br> <textarea name='address' rows='4' cols='50'></textarea>
        </form>
    </body>
</html>
";

// Instantiate Renderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("textAreaAndInputForm.pdf");
Imports IronPdf

' Input and Text Area forms HTML
Private FormHtml As String = "
<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=''> <br>
            Address: <br> <textarea name='address' rows='4' cols='50'></textarea>
        </form>
    </body>
</html>
"

' Instantiate Renderer
Private Renderer As New ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("textAreaAndInputForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

如何透過程式碼新增文字表單?

無需使用 HTML,即可透過程式碼新增文字表單欄位。 首先,使用所需參數建立一個 PdfFormField 物件。 接著使用 AddTextField() 屬性的 PdfForm 方法來新增表單。 當您需要編輯現有 PDF 檔案,或向非 HTML 格式建立的文件中加入表單時,此方法效果甚佳。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-add-input-textarea.cs
using IronPdf;
using IronSoftware.Forms;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>");

// Configure required parameters
string name = "firstname";
string value = "first name";
uint pageIndex = 0;
double x = 100;
double y = 700;
double width = 50;
double height = 15;

// Create text form field
var textForm = new TextFormField(name, value, pageIndex, x, y, width, height);

// Add form
pdf.Form.Add(textForm);

pdf.SaveAs("addTextForm.pdf");
Imports IronPdf
Imports IronSoftware.Forms

' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>")

' Configure required parameters
Private name As String = "firstname"
Private value As String = "first name"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 700
Private width As Double = 50
Private height As Double = 15

' Create text form field
Private textForm = New TextFormField(name, value, pageIndex, x, y, width, height)

' Add form
pdf.Form.Add(textForm)

pdf.SaveAs("addTextForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

請使用 AddLabel() 方法為表單欄位添加標籤。 進一步了解如何在 PDF 上繪製文字與位圖。 探索自訂字型以提升表單外觀。


如何建立複選框和下拉式選單表單?

如何將 HTML 中的核取方塊和下拉式選單渲染出來?

透過渲染包含這些元素的 HTML 字串、檔案或網頁 URL,來建立核取方塊和下拉式選單表單。 將 EnableFormRendering 屬性設為 true 以啟用表單建立功能。 針對複雜情境,請轉換包含伺服器端表單控制項的 ASPX 頁面

下拉式選單表單提供下拉式選項。 使用者可從可用選項中進行選擇,並在 PDF 文件中提供輸入內容。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-checkbox-combobox.cs
using IronPdf;

// Input and Text Area forms HTML
string FormHtml = @"
<html>
    <body>
        <h2>Editable PDF Form</h2>
        <h2>Task Completed</h2>
        <label>
            <input type='checkbox' id='taskCompleted' name='taskCompleted'> Mark task as completed
        </label>

        <h2>Select Priority</h2>
        <label for='priority'>Choose priority level:</label>
        <select id='priority' name='priority'>
            <option value='high'>High</option>
            <option value='medium'>Medium</option>
            <option value='low'>Low</option>
        </select>
    </body>
</html>
";

// Instantiate Renderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("checkboxAndComboboxForm.pdf");
Imports IronPdf

' Input and Text Area forms HTML
Private FormHtml As String = "
<html>
    <body>
        <h2>Editable PDF Form</h2>
        <h2>Task Completed</h2>
        <label>
            <input type='checkbox' id='taskCompleted' name='taskCompleted'> Mark task as completed
        </label>

        <h2>Select Priority</h2>
        <label for='priority'>Choose priority level:</label>
        <select id='priority' name='priority'>
            <option value='high'>High</option>
            <option value='medium'>Medium</option>
            <option value='low'>Low</option>
        </select>
    </body>
</html>
"

' Instantiate Renderer
Private Renderer As New ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("checkboxAndComboboxForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

如何透過程式碼新增核取方塊和下拉式選單?

如何建立複選框表單欄位?

若要新增核取方塊,請使用所需參數建立 CheckboxField 物件。 value 參數決定檢查狀態:"no"表示未檢查,"yes"表示已檢查。 請使用 AddCheckbox() 屬性的 PdfForm 方法來新增表單。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-add-checkbox.cs
using IronPdf;
using IronSoftware.Forms;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h2>Checkbox Form Field</h2>");

// Configure required parameters
string name = "checkbox";
string value = "no";
uint pageIndex = 0;
double x = 100;
double y = 700;
double width = 15;
double height = 15;

// Create checkbox form field
var checkboxForm = new CheckboxFormField(name, value, pageIndex, x, y, width, height);

// Add form
pdf.Form.Add(checkboxForm);

pdf.SaveAs("addCheckboxForm.pdf");
Imports IronPdf
Imports IronSoftware.Forms

' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h2>Checkbox Form Field</h2>")

' Configure required parameters
Private name As String = "checkbox"
Private value As String = "no"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 700
Private width As Double = 15
Private height As Double = 15

' Create checkbox form field
Private checkboxForm = New CheckboxFormField(name, value, pageIndex, x, y, width, height)

' Add form
pdf.Form.Add(checkboxForm)

pdf.SaveAs("addCheckboxForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

如何建立下拉式選單表單欄位?

若要新增下拉式選單,請使用所需參數實例化 ComboBoxField 物件。 value 參數決定所選的選項。請使用 AddComboBox() 屬性的 PdfForm 方法來新增表單。 在處理表單資料時,請從現有 PDF 檔案中擷取文字與圖片,以動態填充下拉式選單。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-add-combobox.cs
using IronPdf;
using IronSoftware.Forms;
using System.Collections.Generic;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h2>Combobox Form Field</h2>");

// Configure required parameters
string name = "combobox";
string value = "Car";
uint pageIndex = 0;
double x = 100;
double y = 700;
double width = 60;
double height = 15;
var choices = new List<string>() { "Car", "Bike", "Airplane" };

// Create combobox form field
var comboboxForm = new ComboboxFormField(name, value, pageIndex, x, y, width, height, choices);

// Add form
pdf.Form.Add(comboboxForm);

pdf.SaveAs("addComboboxForm.pdf");
Imports IronPdf
Imports IronSoftware.Forms
Imports System.Collections.Generic

' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h2>Combobox Form Field</h2>")

' Configure required parameters
Private name As String = "combobox"
Private value As String = "Car"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 700
Private width As Double = 60
Private height As Double = 15
Private choices = New List(Of String)() From {"Car", "Bike", "Airplane"}

' Create combobox form field
Private comboboxForm = New ComboboxFormField(name, value, pageIndex, x, y, width, height, choices)

' Add form
pdf.Form.Add(comboboxForm)

pdf.SaveAs("addComboboxForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件


如何建立單選按鈕表單?

如何將 HTML 中的單選按鈕渲染出來?

同一組內的單選鈕皆包含於單一表單物件中。 使用 GetRadioGroup() 方法並指定其名稱來取得表單。 SelectedValue 屬性包含所選的選項值;若未選取,則為 'None'。 這反映了 HTML 單選按鈕的行為。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-radiobutton.cs
using IronPdf;

// Radio buttons HTML
string FormHtml = @"
<html>
    <body>
        <h2>Editable PDF Form</h2>
        Choose your preferred travel type: <br>
        <input type='radio' name='traveltype' value='Bike'>
        Bike <br>
        <input type='radio' name='traveltype' value='Car'>
        Car <br>
        <input type='radio' name='traveltype' value='Airplane'>
        Airplane
    </body>
</html>
";

// Instantiate Renderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("radioButtomForm.pdf");
Imports IronPdf

' Radio buttons HTML
Private FormHtml As String = "
<html>
    <body>
        <h2>Editable PDF Form</h2>
        Choose your preferred travel type: <br>
        <input type='radio' name='traveltype' value='Bike'>
        Bike <br>
        <input type='radio' name='traveltype' value='Car'>
        Car <br>
        <input type='radio' name='traveltype' value='Airplane'>
        Airplane
    </body>
</html>
"

' Instantiate Renderer
Private Renderer As New ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True

Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("radioButtomForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

如何透過程式碼新增單選按鈕表單?

透過程式碼新增單選按鈕表單欄位。 使用所需參數建立 RadioField 物件。 請使用 AddRadioButton() 屬性的 PdfForm 方法來新增表單。 此方法有助於合併 PDF 檔案,並在各文件中添加一致的表單欄位。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-add-radiobutton.cs
using IronPdf;
using IronSoftware.Forms;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>");

// Configure required parameters
string name = "choice";
string value = "yes";
uint pageIndex = 0;
double x = 100;
double y = 700;
double width = 15;
double height = 15;

// Create the first radio form
var yesRadioform = new RadioFormField(name, value, pageIndex, x, y, width, height);

value = "no";
x = 200;

// Create the second radio form
var noRadioform = new RadioFormField(name, value, pageIndex, x, y, width, height);

pdf.Form.Add(yesRadioform);
pdf.Form.Add(noRadioform);

pdf.SaveAs("addRadioForm.pdf");
Imports IronPdf
Imports IronSoftware.Forms

' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>")

' Configure required parameters
Private name As String = "choice"
Private value As String = "yes"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 700
Private width As Double = 15
Private height As Double = 15

' Create the first radio form
Private yesRadioform = New RadioFormField(name, value, pageIndex, x, y, width, height)

value = "no"
x = 200

' Create the second radio form
Dim noRadioform = New RadioFormField(name, value, pageIndex, x, y, width, height)

pdf.Form.Add(yesRadioform)
pdf.Form.Add(noRadioform)

pdf.SaveAs("addRadioForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

請使用 AddLabel() 方法為單選鈕添加標籤。 進一步了解如何在 PDF 上繪製文字與位圖


如何將圖片表單加入 PDF 檔案?

僅透過程式碼新增圖片表單欄位。 使用所需參數建立 ImageField 物件。 請使用 AddImageField() 屬性的 PdfForm 方法來新增表單。 影像表單非常適合用於照片識別或簽名擷取功能。

:path=/static-assets/pdf/content-code-examples/how-to/create-forms-add-image.cs
using IronPdf;
using IronSoftware.Forms;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>");

// Configure required parameters
string name = "image1";
uint pageIndex = 0;
double x = 100;
double y = 600;
double width = 200;
double height = 200;

// Create the image form
ImageFormField imageForm = new ImageFormField(name, pageIndex, x, y, width, height);

pdf.Form.Add(imageForm);

pdf.SaveAs("addImageForm.pdf");
Imports IronPdf
Imports IronSoftware.Forms

' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h2>Editable PDF Form</h2>")

' Configure required parameters
Private name As String = "image1"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 600
Private width As Double = 200
Private height As Double = 200

' Create the image form
Private imageForm As New ImageFormField(name, pageIndex, x, y, width, height)

pdf.Form.Add(imageForm)

pdf.SaveAs("addImageForm.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

輸出 PDF 檔案:檢視 PDF 中的圖片。 瀏覽器不支援圖片表單; 請在 Adobe Acrobat 中開啟以測試此功能。

PDF 表單編輯器,顯示

如何建立未簽署的簽名表單?

透過建立簽名物件,插入未簽署或空白的簽名欄位。 存取目標 PDF 的 SignatureForm 屬性,並使用 AddSignatureField() 方法插入簽名。 將 PDF 檔案(含空白簽名欄位)匯出。 這可建立數位簽章,日後可填入實際的簽章資料。

:path=/static-assets/pdf/content-code-examples/how-to/signing-unsigned-signature.cs
using IronPdf;
using IronSoftware.Forms;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Configure required parameters
string name = "cert";
uint pageIndex = 0;
double x = 100;
double y = 600;
double width = 300;
double height = 100;

// Create signature
SignatureFormField signature = new SignatureFormField(name, pageIndex, x, y, width, height);

// Add signature
pdf.Form.Add(signature);

pdf.SaveAs("signature.pdf");
Imports IronPdf
Imports IronSoftware.Forms

Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")

' Configure required parameters
Private name As String = "cert"
Private pageIndex As UInteger = 0
Private x As Double = 100
Private y As Double = 600
Private width As Double = 300
Private height As Double = 100

' Create signature
Private signature As New SignatureFormField(name, pageIndex, x, y, width, height)

' Add signature
pdf.Form.Add(signature)

pdf.SaveAs("signature.pdf")
$vbLabelText   $csharpLabel

輸出 PDF 文件

輸出 PDF 檔案:signature.pdf。 瀏覽器不支援簽名表單; 請在 Adobe Acrobat 中開啟以測試此功能。 為提升安全性,請探索使用 HSM 對 PDF 進行簽名

Adobe Acrobat 在 PDF 文件中顯示未簽署的簽名欄位,並附有編輯工具側邊欄

TextFormField Add Form DrawText CreatePdfFormsFromHtml CheckboxFormField Add Form ComboboxFormField Add Form FindFormField Value RadioFormField Add Form DrawText ImageFormField Add Form Form Add

學習如何透過程式碼填寫和編輯 PDF 表單:"如何填寫和編輯 PDF 表單"。 如需全面的表單安全性解決方案,請參閱我們的 PDF 權限與密碼指南。

準備好進一步探索了嗎? 請參閱我們的教學指南:簽署與保護 PDF 文件

常見問題

如何在 C# 中建立可填寫的 PDF 表單?

您可以透過 IronPDF 的全面 API,使用 C# 建立可填寫的 PDF 表單。只需將 ChromePdfRenderer 的 CreatePdfFormsFromHtml 選項設為 true,然後渲染包含表單元素(如 input 標籤、textarea、核取方塊和單選按鈕)的 HTML 即可。IronPDF 會自動將這些 HTML 表單元素轉換為互動式 PDF 表單欄位。

我可以向 PDF 文件中新增哪些類型的表單欄位?

IronPDF 支援新增各種表單欄位類型,包括文字輸入框、文字區域、核取方塊、單選鈕、下拉式選單、圖片表單及數位簽章。您可以透過渲染 HTML 表單,或使用 IronPDF 的 API 透過程式碼新增表單欄位來建立這些欄位。

不使用 HTML 的情況下,我可以建立 PDF 表單嗎?

是的,IronPDF 允許您在不使用 HTML 的情況下,透過程式設計方式新增表單欄位。您可以使用必要的參數建立 TextFormField 等表單欄位物件,並透過 Form 屬性的 Add 方法將其直接新增至 PDF 文件中。此方法非常適合用於編輯現有 PDF 文件或動態建立表單。

在將 HTML 轉換為 PDF 時,該如何啟用表單建立功能?

若要在使用 IronPDF 進行 HTML 轉 PDF 時啟用表單建立功能,請在 ChromePdfRenderer 的 RenderingOptions 中將 CreatePdfFormsFromHtml 屬性設為 true。此設定會指示 IronPDF 在渲染過程中,將 HTML 表單元素轉換為互動式 PDF 表單欄位。

建立簡單 PDF 表單的最快方法是什麼?

using IronPDF 建立 PDF 表單的最快速方式,是透過單一行程式碼:建立一個 ChromePdfRenderer 物件,並將 CreatePdfFormsFromHtml 設定為 true,接著傳入您的 HTML 表單內容呼叫 RenderHtmlAsPdf 方法,最後儲存結果。此操作會自動將 HTML 輸入元素轉換為可填寫的 PDF 表單欄位。

Curtis Chau
技術撰稿人

Curtis Chau 擁有卡爾頓大學(Carleton University)的電腦科學學士學位,專精於前端開發,並精通 Node.js、TypeScript、JavaScript 及 React。他熱衷於打造直觀且美觀的用戶介面,喜歡運用現代框架,並創建結構完善、視覺上吸引人的手冊。

除了開發工作之外,Curtis 對物聯網(IoT)抱有濃厚興趣,致力於探索整合硬體與軟體的創新方法。閒暇時,他喜歡玩遊戲和開發 Discord 機器人,將對科技的熱愛與創意相結合。

準備開始了嗎?
Nuget 下載 19,014,616 | 版本: 2026.5 just released
Still Scrolling Icon

還在往下捲動嗎?

想要快速確認成果嗎? PM > Install-Package IronPdf
執行範例 觀看您的 HTML 轉為 PDF。