使用ASP.Net使用动态值填写PDF表单

时间:2012-04-06 11:28:25

标签: c# asp.net pdf-generation

我被困在这里。实际上我正在尝试使用asp.net填写PDF表单。我得到一些帮助并编写以下代码:

private void fillForm()
{
    try
    {
        string formFile = Server.MapPath("") + @"\Forms\fw4.pdf";
        string savepath = Server.MapPath("") + @"\Forms\new_fw4.pdf";
        PdfReader pdfReader = new PdfReader(formFile);
        using (FileStream stream = new FileStream(savepath, FileMode.Create))
        {
            PdfStamper pdfStamper = new PdfStamper(pdfReader, stream);
            AcroFields formFields = pdfStamper.AcroFields;

            foreach (DictionaryEntry de in formFields.Fields)
             {
                 formFields.SetField("field name", "field value");
             }            
            pdfStamper.FormFlattening = true;
            pdfStamper.Close();
        }
    }
    catch
    {
    }
}

我希望程序显示List中的所有字段。 我无法使用foreach循环迭代所有可用字段。它给了我这个错误:

无法将System.Collections.Generic.KeyValuePair<string,iTextSharp.text.pdf.AcroFields.Item>类型转换为System.Collections.DictionaryEntry

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

正如您更新了KeyValuePair,请尝试使用item.Key&amp; item.Value