如何在C#中使用IronPDF建立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. 使用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()屬性的方法來新增表單。 當您需要編輯現有的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"表示選中。 使用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物件。 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文件


Icon Quote related to 輸出PDF文件

我最喜歡的程式庫是IronPDF。它允許快速高效地操作PDF文件。它還有許多有價值的功能,例如導出到PDF/A格式和數位簽署PDF文件。

Milan Jovanovic related to 輸出PDF文件

Milan Jovanovic

Microsoft MVP

查看案例研究
Icon Quote related to 輸出PDF文件

IronOCR意味著我們每年可以從手動處理中節省$40,000,同時提高生產力,釋放資源以進行高影響的任務。我會強烈推薦它。

Brent Matzelle related to 輸出PDF文件

Brent Matzelle

首席技術官,OPYN

查看案例研究
Icon Quote related to 輸出PDF文件

IronSuite在我們的運營中扮演著至關重要的角色。這些工具增加了包括建立平面圖和改善庫存管理在內的業務效率。

David Jones related to 輸出PDF文件

David Jones

首席軟體工程師,Agorus Build

查看案例研究

如何建立單選按鈕表單?

如何從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()的方法新增表單。 這種方法有助於合併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物件。 使用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的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。您可以通過具體的參數實例化文字表單字段等表單字段物件,並使用Form屬性的Add方法將其直接新增到您的PDF文件中。這種方法在編輯現有PDF或動態建立表單時理想。

我如何在將HTML轉換為PDF時啟用表單建立?

若要在使用IronPDF將HTML轉換為PDF的過程中啟用表單的建立,請在ChromePdfRenderer的RenderingOptions中將CreatePdfFormsFromHtml屬性設置為true。這樣將告知IronPDF在渲染過程中將HTML表單元素轉換成互動式PDF表單字段。

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

使用IronPDF建立PDF表單的最快捷的方式是使用一行程式碼:從設置為true的CreatePdfFormsFromHtml建立新的ChromePdfRenderer,然後使用您的HTML表單內容調用RenderHtmlAsPdf並保存結果。這會自動將HTML輸入元素轉換為可填寫的PDF表單字段。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

準備開始了嗎?
Nuget 下載 20,296,129 | 版本: 2026.7 剛剛發布
Still Scrolling Icon

還在捲動嗎?

想快速獲得證明嗎? PM > Install-Package IronPdf
執行範例 看您的HTML變成PDF。