4

我正在使用 itextsharp 将我的 asp.net 页面转换为 pdf。在按钮上单击我正在编写以下代码:

        Response.ContentType = "application/pdf";
    Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.pdf");
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    StringWriter sw = new StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    //GridView1.AllowPaging = false;
    GridView1.DataBind();
    GridView1.RenderControl(hw);
    StringReader sr = new StringReader(sw.ToString());
    Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
    HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
    pdfDoc.Open();
    htmlparser.Parse(sr);
    pdfDoc.Close();
    Response.Write(pdfDoc);
    Response.End();

但我收到错误:“文档没有页面”请帮助我摆脱这个错误并生成 pdf。

4

1 回答 1

0

为此需要采取两个步骤:

1) 检查 ITextSharp dll 是否为最新版本

2) 使用链接按钮而不是按钮,并且不要使用超链接,因为它会导致超链接按钮出错。

于 2013-11-14T05:16:39.950 回答