C#でプログラム的にPDFフォームを埋める(コーディングチュートリアル)
このチュートリアルでは、プログラムでPDFファイルのフォームと対話する方法を示します。
.NETライブラリは市場に多く存在しており、それらを使用してC#でプログラム的にPDFフォームを記入することができます。 その一部は理解するのが難しく、一部は有料です。
IronPDFは理解しやすく開発用に無料で提供されているため、最高の.NET Coreライブラリです。 PDFフォームの記入以外にも、IronPDFはHTML文字列、HTMLファイル、URLから新しいPDFを作成することもできます。
C#を使用してPDFフォームをプログラム的に記入する方法を見てみましょう。 まず、デモンストレーション用にコンソールアプリケーションを作成しますが、必要に応じて他のものを使用できます。
Visual Studioプロジェクトを作成
Microsoft Visual Studioを開きます。 新しいプロジェクトを作成 > テンプレートからコンソールアプリケーションを選択 > 次へ > プロジェクトに名前を付けます。 次へ > ターゲットフレームワークを選択します。 作成ボタンをクリックします。 プロジェクトは以下のように作成されます。
Visual Studioで新しく作成されたコンソールアプリケーション
IronPDFライブラリのインストール
前述したように、このチュートリアルではIronPDFライブラリが使用されます。 この.NETライブラリを使用する主な理由は、開発用に無料で提供されており、すべての機能が1つのライブラリに含まれているためです。
パッケージマネージャーコンソールに移動します。 次のコマンドを入力します:
Install-Package IronPdf
このコマンドは、私たちのためにIronPDFライブラリをインストールします。 次に、コーディングを始めましょう。
PDFドキュメントを読む
PDFフォームを記入する最初のステップはPDFドキュメントを読むことです。 明らかに、事前に読まずにフォームを記入することはできません。以下のPDFドキュメントはデモンストレーション用に使用されます。 Googleドライブリンクからダウンロードするか、ご自身のドキュメントを使用できます。
フォームを記入するためのサンプル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はフィールド名またはインデックスを使用してフォームフィールドにアクセスすることで非常に簡単にします。 1つずつ見ていきましょう。
名前でフォームフィールドを取得する
次のコードは、名前でフィールドを取得します:
// 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](https://ironpdf.com/object-reference/api/Iron Software.Forms.IFormFieldCollection.html#IronSoftware_Forms_IFormFieldCollection_FindFormField_SystemString)メソッドは、引数としてフィールド名を取ります。 これはエラー耐性があり、大文字小文字の間違いや部分的なフィールド名の一致を試みます。
インデックスでフォームフィールドを取得する
インデックスを使用して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フォーム
サンプル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フォームドキュメントを確認します。
HTMLファイルから生成されたPDFフォーム
まとめ
PDFフォームを自動的かつプログラム的に記入することは重要です。 この記事では、C#でIronPDFを使用してPDFフォームを記入するための最も簡単なアプローチを提案しました。 さらに、新しいPDFフォームをゼロから生成する方法も学びました。新しいPDFフォームを生成する方法。
さらに、IronPDFは開発者がPDFからテキストやコンテンツを抽出したり、PDFにチャートをレンダリングしたり、バーコードを挿入したり、パスワードでセキュリティを強化したり、透かしを入れるための方法を提供します。
他にもIronBarcodeのようにバーコードを扱うための便利なライブラリや、IronXLはExcelドキュメントを扱うためのもの、IronOCRはOCRを扱うためのものがあります。 Iron Suiteを購入すると、これら5つのライブラリを2つの価格で取得できます。詳細はIron Softwareライセンスページをご覧ください。
よくある質問
C#を使用してPDFフォームをプログラミングで記入するにはどうすればよいですか?
IronPDFは、PdfDocument.FromFileを使用してドキュメントをロードし、doc.Form.Fieldsを使用してフォームフィールドにアクセスし、それらの値を設定することで、C#でPDFフォームをプログラミングで記入することを可能にします。
PDFフォームを記入するためにC#プロジェクトをセットアップする際の手順は何ですか?
まず、Visual Studioでコンソールアプリケーションを作成します。それから、パッケージマネージャーコンソールを使用してInstall-Package IronPdfでIronPDFをインストールします。PdfDocument.FromFileを使用してPDFをロードし、必要に応じてフォームフィールドを操作します。
IronPDFはC#でHTMLから新しいPDFフォームを生成するために使用できますか?
はい、IronPDFはChromePdfRendererクラスを使用してHTMLフォームをPDFドキュメントにレンダリングすることで、新しいPDFフォームを生成できます。これはウェブフォームの入力に基づいた動的なPDF生成を可能にします。
PDFフォーム処理にIronPDFを使用することの主な利点は何ですか?
IronPDFは.NETアプリケーションへのPDFフォーム処理の統合を支援するユーザーフレンドリーなアプローチを提供します。フォームの記入、テキスト抽出、ドキュメントのセキュリティをサポートしており、簡単な統合と無料の開発機能を提供しています。
IronPDFを使用してPDFフォームからテキストを抽出するにはどうすればよいですか?
IronPDFはPDFフォームからテキストを抽出するためのメソッドを提供します。PdfDocument.FromFileでドキュメントをロードした後、pdfDocument.ExtractAllText()のようなメソッドを使用してテキストコンテンツにアクセスし抽出できます。
PDFドキュメントのセキュリティを.NETライブラリを使用して確保することは可能ですか?
はい、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管理のための包括的なツールです。
PDFフォームを扱う開発者にとってIronPDFはどのような利点がありますか?
IronPDFはPDFフォームを記入し操作するための簡単なAPIを提供し、HTML-to-PDFレンダリングや.NETアプリケーションとの統合などの機能を通じて、開発者の生産性を高めます。
IronPDF は .NET 10 をサポートしていますか? また、IronPDF を使用して C# で PDF フォームに入力する場合、それはどのような意味を持ちますか?
はい、IronPDFは.NET 8および.NET 9を含む最新の.NETバージョンをサポートしており、次期リリース(2025年11月予定)の.NET 10にも既に準拠しています。つまり、.NET 10との完全な互換性を保ちながら、C#でのフォーム入力やPDF操作にIronPDFを引き続きご利用いただけます。






