Monday 8 April 2013

ASP.Net: Convert aspx page in to Pdf | Neha Sharma



Introduction:

This article is about to export an aspx page in to Pdf file.

Requirement:

The only requirement is to add dll of “ITextSharp” in to the application.

Code:

In code behind add below namespaces:
using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html;
using iTextSharp.text.html.simpleparser;
using System.Drawing;

Design a page.

Place below code on the button click event to convert aspx page in to pdf .

protected void Button1_Click(object sender, EventArgs e)
    {
        string attachment = "attachment; filename=" + "abc" + ".pdf";
        Response.ClearContent();
        Response.AddHeader("content-disposition", attachment);
        Response.ContentType = "application/pdf";
        StringWriter s_tw = new StringWriter();
        HtmlTextWriter h_textw = new HtmlTextWriter(s_tw);
        h_textw.AddStyleAttribute("font-size", "7pt");
        h_textw.AddStyleAttribute("color", "Black");
        Panel1.RenderControl(h_textw);//Name of the Panel
        Document doc = new Document();
        doc = new Document(PageSize.A4, 5, 5, 15, 5);
        FontFactory.GetFont("Verdana", 80, iTextSharp.text.Color.RED);
        PdfWriter.GetInstance(doc, Response.OutputStream);
        doc.Open();

        StringReader s_tr = new StringReader(s_tw.ToString());
        HTMLWorker html_worker = new HTMLWorker(doc);
        html_worker.Parse(s_tr);

        doc.Close();
        Response.Write(doc);
    }
public override void VerifyRenderingInServerForm(Control control)
    {


    }

Save all and run an error ll occur like the below image



This error occurs when we render a control in to response. Follow the below point to come out from this error:

Add  EnableEventValidation="false" in the page directive on the source of your page at the top

Now save all and view page in browser when you click on the button to convert apx page in to Pdf it ll 
work.


Thanks

3 comments:

  1. Great conversion tips for asp page to pdf.

    ASP.Net Migration

    ReplyDelete
  2. it throws null reference exception first & then while opening the file shows error that file is damaged.please give me solution.

    ReplyDelete

Which Game Engine you should choose | Neha Sharma

Unity3D and Unreal Engine are only 2 Game engine which executes an indispensable position in Game Industry. The choice of the engine must ...