Monday, September 21, 2009

Exporting a GridView to PDF using iTextSharp and C#


Here is the code for exporting the GridView contents in PDF format using the iTextSharp library and C#.


StringWriter stringReader = new StringWriter();
HtmlTextWriter htextw = new HtmlTextWriter(stringReader);
grid.RenderControl(htextw);
System.Text.StringBuilder builder = stringReader.GetStringBuilder();
MemoryStream m = new MemoryStream();
Document d = new Document();
PdfWriter writer = PdfWriter.GetInstance(d, m);
writer.CloseStream = false;
d.Open();
XmlTextReader reader = new XmlTextReader(new StringReader(builder.ToString()));
HtmlParser.Parse(d, reader);
d.Close();
writer.Close();
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", String.Format("inline;filename={0}", "abc.pdf"));
Response.BinaryWrite(m.ToArray());
Response.End();

No comments:

Post a Comment