如何使用 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");在FromFile方法中傳遞 PDF 文件的完整路徑。 這將從您的本機系統讀取PDF檔案。
取得 PDF 表格
編寫以下程式碼行,從已載入的 PDF 文件中取得表單。
var form = doc.Form;var 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");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];填寫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");
}
}上面的範例程式碼將根據索引值填入表單欄位。 您也可以使用前面提到的欄位名稱執行相同的操作。 讓我們運行程式看看輸出結果。
已填寫的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");
}
}執行程式即可查看產生的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 能否用於在 C# 中從 HTML 產生新的 PDF 表單?
是的,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 提供了一個簡單的 API 來填寫和操作 PDF 表單,透過提供 HTML 到 PDF 的渲染和與 .NET 應用程式的整合等功能,提高了開發人員的生產力。
IronPDF 是否支援 .NET 10?如果支持,這對使用 IronPDF 在 C# 中填寫 PDF 表單意味著什麼?
是的,IronPDF 支援包括 .NET 8 和 .NET 9 在內的現代 .NET 版本,並且已經相容於即將發布的 .NET 10(計劃於 2025 年 11 月發布)。這表示您可以繼續使用 IronPDF 在 C# 中進行表單填寫和 PDF 操作,並且與 .NET 10 完全相容。







