关于c#中的在线交互式PDF Web表单

时间:2012-12-28 15:17:10

标签: c# asp.net itextsharp itext

我想学习如何使用Visual Studios 2010创建一个在线PDF WEB表单,该表单可以将数据存储到我的SQL数据库中,但不知道从哪里开始。

我找到了一本名为“iText In Action”的书,但对Java开发人员来说似乎更多。是否有任何书籍更适合C#并创建网页pdf表格?我将非常感谢你应该从哪里获得帮助。

由于

1 个答案:

答案 0 :(得分:1)

您可以尝试使用Java iText的.NET端口iTextSharp。 我找到了这个资源 http://www.4guysfromrolla.com/articles/030911-1.aspx

我使用这个库来制作PDF表格,这非常简单。 这个过程类似于使用Adobe Acrobat等外部工具创建PDF表单,然后,您的程序必须读取它并使用您需要的数据设置字段。像这样:

using (var existingFileStream = File.OpenRead(_pdfTemplatePath))
using (var memoryStream = new MemoryStream())
{
    // Open existing PDF  
    var pdfReader = new PdfReader(existingFileStream);

    // PdfStamper, which will create  
    var stamper = new PdfStamper(pdfReader, memoryStream);

    var form = stamper.AcroFields;

    form.SetField("Field_A", yourDataForA);
    form.SetField("Field_B", yourDataForB);
    form.SetField("Field_C", yourDataForC);

    stamper.FormFlattening = true;
    stamper.Close();
    pdfReader.Close();

    string cd = "inline";

    // And then send to the browser
    HttpContext.Current.Response.Clear();
    HttpContext.Current.Response.ContentType = "application/pdf";
    HttpContext.Current.Response.AddHeader("content-disposition", 
        string.Format("{0};filename={1}.pdf", cd, string.IsNullOrEmpty(_theFilename)
                                                                     ? "documento"
                                                                     : _theFilename));
    HttpContext.Current.Response.BinaryWrite(memoryStream.ToArray());

}