IRONPDFの使用

C#でプログラムによるPDFフォームの入力(コーディングチュートリアル)

更新済み 2024年2月8日
共有:

このチュートリアルでは、プログラムによってPDFファイルのフォームとやり取りする方法を示します。

市場には、C#でプログラムによってPDFフォームを埋めることができる複数の.NETライブラリが存在しています。 いくつかは理解しにくいものもあり、いくつかは有料である必要があります。

IronPDFは、理解しやすく開発に無料で利用できるため、最高の.NET Coreライブラリです。 記入すること以外にPDF フォームIronPDFはHTML文字列、HTMLファイル、URLから新しいPDFを作成することもできます。

C#を使用してPDFフォームをプログラムで入力する方法を見てみましょう。 まず最初に、デモンストレーションのためにコンソール アプリケーションを作成しますが、要件に応じて任意のものを使用できます。

Visual Studio プロジェクトを作成する

Microsoft Visual Studio を開く。 [新しいプロジェクトの作成] をクリックします。 > テンプレートから [コンソール アプリケーション] を選択します。 > [次へ] を押します。 > プロジェクトに名前を付けます。 次へを押す > ターゲットフレームワークを選択します。 作成ボタンをクリックしてください。 プロジェクトは以下のように作成されます。

C#でプログラムでPDFフォームを記入する(コーディングチュートリアル) 図1: Visual Studioで新しく作成されたコンソールアプリケーション

Visual Studioで新しく作成されたコンソールアプリケーション

IronPDFライブラリをインストールする

前述したように、このチュートリアルではIronPDFライブラリを使用します。 この.NETライブラリを使用する主な理由は、開発用に無料であり、すべての機能が単一のライブラリに含まれていることです。

パッケージ マネージャー コンソールに移動します。 以下のコマンドを入力してください:

Install-Package IronPdf

このコマンドは、私たちのためにIronPDFライブラリをインストールします。 次に、コーディングを始めましょう。

PDFドキュメントを読み取る

PDFフォームに記入するための最初のステップは、PDFドキュメントを読み取ることです。 当然ですが、最初に読むことなしにフォームに記入することはできません。デモンストレーションには以下のPDFドキュメントを使用します。 こちらからダウンロードできます:グーグルドライブリンクまたは、ドキュメントをご使用ください。

C#でプログラムを使ってPDFフォームに記入する(コーディングチュートリアル)、図2: フォームに記入するサンプルPDFファイル

入力用フォームのサンプルPDFファイル

このファイルを読み取るためのコードは次のとおりです:

PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
VB   C#

PDFドキュメントの完全なパスを pdfPath 変数に渡して下さい。FromFile(ファイルから)メソッド。 これは、お使いのローカルシステムからPDFファイルを読み取ります。

PDFフォームを取得

以下のコード行を書いて、読み込んだPDFドキュメントからフォームを取得します。

var form = doc.Form;
var form = doc.Form;
Dim form = doc.Form
VB   C#

フォームフィールドを取得

フォームフィールドの値を設定するために、IronPDFは非常に簡単にこれを行うことができます。フィールド名またはインデックスを使用してフォームフィールドにアクセスする2つの方法があります。 一つずつ順に説明していきましょう。

名前でフォームフィールドを取得

以下のコードは、名前でフィールドを取得します:

var field = form.GetFieldByName("First Name");
var field = form.GetFieldByName("First Name");
Dim field = form.GetFieldByName("First Name")
VB   C#

についてフィールド名で取得 (フィールド名で取得 (GetFieldByName))メソッドは引数としてフィールド名を取ります。 これはフォールトトレラントであり、ケースの間違いや部分的なフィールド名を照合しようと試みます。

インデックスでフォームフィールドを取得します

インデックスを使用してPDFフォームフィールドを取得することもできます。 インデックスはゼロから始まります。 以下のサンプルコードは、インデックスでフォームフィールドを取得するために使用されます。

var field = form.Fields [0];
var field = form.Fields [0];
Dim field = form.Fields (0)
VB   C#

PDFフォームに入力

次に、すべてのコードを結合してPDFフォームを記入しましょう。

PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
var form = doc.Form;
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";
doc.SaveAs(@"D:\myPdfForm.pdf");
PdfDocument doc =  PdfDocument.FromFile(@"D:\myPdfForm.pdf");
var form = doc.Form;
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";
doc.SaveAs(@"D:\myPdfForm.pdf");
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
Dim form = doc.Form
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"
doc.SaveAs("D:\myPdfForm.pdf")
VB   C#

上記のサンプルコードは、インデックス値によってフォームフィールドを入力します。 以下のフィールド名を使用して同じことができます。 プログラムを実行して出力を確認しましょう。

記入済み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ファイルを保存してください。フォームの要件に応じて、このHTMLをカスタマイズすることができます。

次に、あなたのC#プログラムに以下のコードを書いてください。

var renderer = new ChromePdfRenderer();
var file = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
file.SaveAs(@"D:\myForm.pdf");
var renderer = new ChromePdfRenderer();
var file = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
file.SaveAs(@"D:\myForm.pdf");
Dim renderer = New ChromePdfRenderer()
Dim file = renderer.RenderHtmlFileAsPdf("D:\myForm.html")
file.SaveAs("D:\myForm.pdf")
VB   C#

プログラムを実行して、結果のPDFフォームドキュメントを確認してください。

C#でプログラム的にPDFフォームに入力する(コーディングチュートリアル)、図3:HTMLファイルから生成されたPDFフォーム

HTMLファイルから生成されたPDFフォーム

サマリー

PDFフォームを自動的かつプログラムで入力することは重要です。 この記事では、C#でIronPDFを使用してPDFフォームに入力する最も簡単な方法が提案されています。 さらに、次の方法についても学びました。新しいPDFフォームを生成するゼロから。

また、IronPDFは開発者に以下のメソッドも提供していますテキストとコンテンツを抽出PDFからグラフのレンダリングPDF内バーコードを挿入, パスワードでセキュリティを強化以下のコンテンツを日本語に翻訳してください:透かしプログラムによって

バーコードを操作するためのIronBarcode、Excel文書を操作するためのIronXL、OCRを操作するためのIronOCRなど、他にも多くの便利なライブラリがあります。 以下のリンクから完全なIron Suiteを購入すれば、5つのライブラリすべてを2つ分の価格で手に入れることができます。ソフトウェアライセンスのページ詳細については。

< 以前
複数ページを1つのPDFファイルにスキャンする方法
次へ >
C#を使用してASP.NETでPDFを生成する方法