程式化填寫C#中的PDF表單(編碼教程)
本教學將示範如何以程式設計方式與 PDF 文件中的表單進行互動。
市面上有許多 .NET 程式庫,允許我們使用 C# 以程式設計方式填寫 PDF 表單。 有些內容很難理解,有些內容需要付費。
IronPDF 是最好的 .NET Core 庫,因為它易於理解且開發免費。 除了填寫PDF 表單外,IronPDF 還允許從 HTML 字串、HTML 檔案和 URL 建立新的 PDF。
讓我們來看看如何使用 C# 以程式設計方式填寫 PDF 表單。 首先,我們將建立一個控制台應用程式進行演示,但您可以根據需要使用任何應用程式。
建立一個 Visual Studio 項目
開啟 Microsoft Visual Studio。 點擊建立新專案 > 從範本中選擇控制台應用程式 > 按下一步 > 為您的專案命名。 按"下一步"> 選擇目標框架。 點擊"創建"按鈕。 項目將按如下所示建立。
! 使用 C# 以程式設計方式填寫 PDF 表單(編碼教學課程),圖 1:Visual Studio 中新建的控制台應用程式 在 Visual Studio 中新建一個控制台應用程式
安裝 IronPdf Library
如前所述,本教學將使用 IronPDF 庫。 使用此 .NET 程式庫的主要原因是它是免費的,可用於開發,並且在一個庫中提供了所有功能。
前往軟體包管理器控制台。 鍵入以下指令:
Install-Package IronPdf
此指令將為我們安裝 IronPDF 庫。 接下來,我們開始編寫程式碼。
閱讀PDF文檔
填寫PDF表格的第一步是閱讀PDF文件。 顯然,我們怎麼能在不先閱讀的情況下填寫表格呢?以下PDF文件將用於示範。 您可以從Google 雲端硬碟連結下載,或者您可以使用自己的文件。
! 使用 C# 程式設計方式自動填寫 PDF 表單(程式教學),圖 2:用於填寫表單的範例 PDF 文件 請提供填寫表格的範例 PDF 文件
讀取此文件的程式碼如下:
using IronPdf;
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");using IronPdf;
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");Imports IronPdf
' Load the PDF document from the file path
Private doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")在FromFile方法中傳遞 PDF 文件的完整路徑。 這將從您的本機系統讀取PDF檔案。
取得 PDF 表格
編寫以下程式碼行,從已載入的 PDF 文件中取得表單。
var form = doc.Form;var form = doc.Form;Dim form = doc.Form取得表單字段
IronPDF 提供了兩種存取表單欄位的方法來輕鬆設定表單欄位的值:透過欄位名稱或透過索引。 讓我們逐一討論這兩個問題。
按名稱取得表單字段
以下程式碼將按名稱取得欄位:
// Retrieve the form field using its name
var field = form.FindFormField("First Name");// Retrieve the form field using its name
var field = form.FindFormField("First Name");' Retrieve the form field using its name
Dim field = form.FindFormField("First Name")FindFormField方法以欄位名稱作為參數。 它具有容錯能力,能夠匹配大小寫錯誤和不完整的欄位名稱。
按索引取得表單字段
我們也可以透過索引取得 PDF 表單欄位。 索引從零開始。 以下範例程式碼用於按索引取得表單欄位。
// Retrieve the form field using its index
var field = form.Fields[0];// Retrieve the form field using its index
var field = form.Fields[0];' Retrieve the form field using its index
Dim field = form.Fields(0)填寫PDF表格
接下來,讓我們把所有程式碼合併起來,填寫 PDF 表單。
using IronPdf;
class Program
{
static void Main()
{
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
// Access the PDF form
var form = doc.Form;
// Fill out the form fields using their index
form.Fields[0].Value = "John";
form.Fields[1].Value = "Smith";
form.Fields[2].Value = "+19159969739";
form.Fields[3].Value = "John@email.com";
form.Fields[4].Value = "Chicago";
// Save the modified PDF document
doc.SaveAs(@"D:\myPdfForm.pdf");
}
}using IronPdf;
class Program
{
static void Main()
{
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
// Access the PDF form
var form = doc.Form;
// Fill out the form fields using their index
form.Fields[0].Value = "John";
form.Fields[1].Value = "Smith";
form.Fields[2].Value = "+19159969739";
form.Fields[3].Value = "John@email.com";
form.Fields[4].Value = "Chicago";
// Save the modified PDF document
doc.SaveAs(@"D:\myPdfForm.pdf");
}
}Imports IronPdf
Friend Class Program
Shared Sub Main()
' Load the PDF document from the file path
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
' Access the PDF form
Dim form = doc.Form
' Fill out the form fields using their index
form.Fields(0).Value = "John"
form.Fields(1).Value = "Smith"
form.Fields(2).Value = "+19159969739"
form.Fields(3).Value = "John@email.com"
form.Fields(4).Value = "Chicago"
' Save the modified PDF document
doc.SaveAs("D:\myPdfForm.pdf")
End Sub
End Class上面的範例程式碼將根據索引值填入表單欄位。 您也可以使用前面提到的欄位名稱執行相同的操作。 讓我們運行程式看看輸出結果。
已填寫的PDF表格
! 使用 C# 程式設計方式填寫 PDF 表單(程式教學),圖 3: 範例 PDF 檔案中已填寫的表格
可以看到,該程式庫可以用最簡單的程式碼填入 PDF 表單,無需任何複雜的邏輯。 這就是推薦IronPDF的原因。
假設您還沒有任何包含表單的 PDF 文件—別擔心,IronPDF 提供產生 PDF 表單的全面支援。 請遵循以下步驟:
產生新的 PDF 表單文檔
建立一個新的 HTML 文件
建立一個新的HTML文件,並將以下程式碼貼到該文件中:
<!DOCTYPE html>
<html>
<body>
<h2>PDF Forms</h2>
<form action="/action_page.php">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname"><br>
<label for="contact">Contact #:</label><br>
<input type="text" id="contact" name="contact"><br>
<label for="email">Email:</label><br>
<input type="text" id="email" name="email"><br>
<label for="city">City:</label><br>
<input type="text" id="city" name="city"><br>
</form>
</body>
</html><!DOCTYPE html>
<html>
<body>
<h2>PDF Forms</h2>
<form action="/action_page.php">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname"><br>
<label for="contact">Contact #:</label><br>
<input type="text" id="contact" name="contact"><br>
<label for="email">Email:</label><br>
<input type="text" id="email" name="email"><br>
<label for="city">City:</label><br>
<input type="text" id="city" name="city"><br>
</form>
</body>
</html>儲存此範例 HTML 檔案。您可以根據表單需求自訂此 HTML 檔案。
接下來,請在您的 C# 程式中編寫以下程式碼。
using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF
var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
// Save the PDF document to the specified file path
pdfDocument.SaveAs(@"D:\myForm.pdf");
}
}using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF
var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
// Save the PDF document to the specified file path
pdfDocument.SaveAs(@"D:\myForm.pdf");
}
}Imports IronPdf
Friend Class Program
Shared Sub Main()
' Create an instance of ChromePdfRenderer
Dim renderer = New ChromePdfRenderer()
' Render the HTML file as a PDF
Dim pdfDocument = renderer.RenderHtmlFileAsPdf("D:\myForm.html")
' Save the PDF document to the specified file path
pdfDocument.SaveAs("D:\myForm.pdf")
End Sub
End Class執行程式即可查看產生的PDF表單文件。
! 使用 C# 以程式設計方式填寫 PDF 表單(程式教學),圖 3:由 HTML 檔案產生的 PDF 表單 由 HTML 檔案產生的 PDF 表單
摘要
自動和程序化地填寫 PDF 表單非常重要。 本文介紹了一種使用 IronPDF 在 C# 中填寫 PDF 表單的最簡單方法。 此外,您還學習如何從頭開始產生新的 PDF 表單。
此外,IronPDF 還為開發者提供了從 PDF 中提取文字和內容、在 PDF 中渲染圖表、插入條碼、透過密碼增強安全性以及以程式設計方式添加浮水印的方法。
還有許多其他有用的程式庫,例如用於處理條碼的 IronBarcode、用於處理 Excel 文件的 IronXL 以及用於處理 OCR 的 IronOCR。 購買完整的 Iron Suite 套件,即可用兩個庫的價格獲得全部五個庫。請造訪Iron 軟體授權頁面以了解更多詳情。
常見問題解答
如何使用 C# 程式化填寫 PDF 表單?
IronPDF 允許您以 C# 程式化方式填入 PDF 表單,方法是使用 PdfDocument.FromFile 載入文件,並使用 doc.Form.Fields 存取表單欄位以設定其值。
設定 C# 專案以填寫 PDF 表單涉及哪些步驟?
首先,在 Visual Studio 中建立一個 Console Application。然後,使用套件管理員控制台以 Install-Package IronPdf 安裝 IronPDF。使用 PdfDocument.FromFile 載入您的 PDF,並根據需要操作表單欄位。
IronPDF 是否可用於在 C# 中從 HTML 生成新的 PDF 表單?
是的,IronPDF 可以使用 ChromePdfRenderer 類將 HTML 表單渲染為 PDF 文件,從而生成新的 PDF 表單。這允許基於 Web 表單輸入動態生成 PDF。
在 .NET 應用程式中使用 IronPDF 處理 PDF 表單有哪些主要優勢?
IronPDF 為 .NET 應用程式中的 PDF 表單處理提供了一種人性化的整合方式。它支援表單填寫、文字萃取和文件安全性,具有簡易整合和自由開發的能力。
如何使用 IronPDF 從 PDF 表單中提取文字?
IronPDF 提供了從 PDF 表單中提取文字的方法。在使用 PdfDocument.FromFile 載入文件後,您可以使用 pdfDocument.ExtractAllText() 等方法存取並擷取文字內容。
是否可以使用 .NET 函式庫來確保 PDF 文件的安全性?
是的,IronPDF 提供增強 PDF 安全性的功能,包括數位簽名、刪除和加密,以保護 PDF 文件中的敏感資訊。
如果我的 PDF 表單欄位無法如預期般更新,我可以採取哪些疑難排解步驟?
確保使用 IronPDF 正確識別並存取表單欄位。驗證欄位名稱或索引,並使用 doc.Form.FindFormField('FieldName').Value = 'New Value' 更新欄位值。
在 C# 中填寫表單欄位後,如何儲存修改後的 PDF 文件?
使用 IronPDF 修改表單欄位後,使用 pdfDocument.SaveAs('path/to/newfile.pdf') 儲存更新後的文件,以持久化變更。
除了 PDF 表單處理之外,IronPDF 還能處理其他文件操作嗎?
是的,IronPDF 功能多樣,可處理各種 PDF 作業,包括文字萃取、圖表渲染和文件安全性強化,使其成為 PDF 管理的全面工具。
IronPDF 如何讓使用 PDF 表單的開發人員獲益?
IronPDF 提供了直接的 API 來填寫和處理 PDF 表單,透過提供 HTML-to-PDF 渲染和與 .NET 應用程式整合等功能,提升開發人員的生產力。
IronPDF 是否支持 .NET 10,这对使用 IronPDF 在 C# 中填写 PDF 表单意味着什么?
是的,IronPDF 支持包括 .NET 8 和 .NET 9 在内的现代 .NET 版本,并且已经符合即将发布的 .NET 10 版本(计划于 2025 年 11 月发布)。這意味著您可以繼續使用 IronPDF 在 C# 中進行表格填寫和 PDF 操作,並在 .NET 10 中完全相容。






