2011-05-26 207 views
4

如何在iTextSharp中創建可填寫的PDF文件。截至目前,我可以創建一個包含文本的PDF文件,但是我在創建可填充字段方面很掙扎。任何幫助或示例代碼將不勝感激。使用iTextSharp的PDF表格

回答

1

試試這個:

AcroFields fields = pdf.AcroFields; 
fields.SetField("field_1", "1"); 
fields.SetField("field_2", "2"); 
2

它更容易使PDF格式的第三方軟件一樣的Adobe LiveCycle Designer中比iTextSharp的編碼。你只需要根據需要在窗體中放置一些文本框,複選框或單選按鈕,設置其字體,字體大小&的數據類型。

記下所有字段名稱(如「TextField1」等)。創建一個新的網絡表單,其中包含一些將數據提供給該字段的文本框。

可以再與代碼很容易填補這種形式象下面這樣:

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());   
    } 
}