程式化填寫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 允許您通過使用 PdfDocument.FromFile 加載文檔並使用 doc.Form.Fields 訪問表單字段來程式化地填寫 C# 中的 PDF 表單以設定它們的值。
在設置 C# 專案以填寫 PDF 表單時涉及哪些步驟?
首先,在 Visual Studio 中創建一個主控台應用程式。然後,通過套件管理器控制台使用 Install-Package IronPDF 安裝 IronPDF。使用 PdfDocument.FromFile 加載您的 PDF 並根據需要操作表單字段。
IronPDF 能否用來從 HTML 生成新的 PDF 表單於 C# 中?
是的,IronPDF 可以通過使用 ChromePdfRenderer 類將 HTML 表單渲染到 PDF 文件中來生成新的 PDF 表單。這使得基於網頁表單輸入的動態 PDF 生成成為可能。
在 .NET 應用程式中使用 IronPDF 進行 PDF 表單處理的主要優勢是什麼?
IronPDF 提供了一種使用者友好的方法整合 PDF 表單處理到 .NET 應用程式中。它支持表單填充、文本抽取和文件安全,具有簡單的整合和免費的開發能力。
我如何使用 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') 保存更新的文檔以持續變更。
IronPDF 能否處理除 PDF 表單處理外的其他文件操作?
是的,IronPDF 是多功能的,可以處理各種 PDF 操作,包括文本提取、圖表渲染和文件安全增強功能,是一個全面的 PDF 管理工具。
IronPDF 如何對於處理 PDF 表單的開發人員有利?
IronPDF 提供了填寫和操作 PDF 表單的簡單 API,通過提供 HTML-to-PDF 渲染和與 .NET 應用程式的整合來提高開發人員的生產力。
IronPDF支持.NET 10嗎?這對於使用IronPDF在C#中填寫PDF表單意味著什麼?
是的,IronPDF支持現代.NET版本,包括.NET 8和.NET 9,並已符合即將在2025年11月釋出的.NET 10版本。這意味著您可以繼續在.NET 10中使用IronPDF進行表單填寫和PDF操作,完全兼容。



