4

iTextSharp で入力可能な PDF ファイルを作成するにはどうすればよいですか。現時点では、テキストを含む pdf ファイルを作成できますが、入力可能なフィールドの作成に苦労しています。ヘルプやサンプル コードをいただければ幸いです。

4

2 に答える 2

2

iTextsharpでコーディングするよりも、AdobeLiveCycleDesignerなどのサードパーティソフトウェアからPDFフォームを作成する方が簡単です。フォームの必要に応じて、テキストボックス、チェックボックス、またはラジオボタンを配置し、フォント、フォントサイズ、およびデータ型を設定するだけです。

すべてのフィールド名をマークダウンします(「TextField1」など)。そのフィールドにデータをフィードするいくつかのテキストボックスを含む新しいWebフォームを作成します。

次に、そのフォームに次のようなコードを簡単に入力できます。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;

public partial class Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        var reader = new PdfReader(Server.MapPath("~/Emptyform.pdf"));
        var output = new MemoryStream();
        var stamper = new PdfStamper(reader, output);
        stamper.AcroFields.SetField("TextField1", TextBox1.text);
        stamper.FormFlattening = true;
        stamper.Close();
        reader.Close();
        File.WriteAllBytes(Server.MapPath("~/Filledform.pdf"),output.ToArray());        
    }
}
于 2011-09-27T13:44:37.900 に答える
1

これを試して:

AcroFields fields = pdf.AcroFields;
fields.SetField("field_1", "1");
fields.SetField("field_2", "2");
于 2011-05-26T13:53:46.453 に答える