private void generate_pdf(string path, string file, bool download, string text) { var document = new Document(); try { if (download) PdfWriter.GetInstance(document, Response.OutputStream); else PdfWriter.GetInstance(document, new FileStream(path + file, FileMode.Create)); StringBuilder strB = new StringBuilder(); document.Open(); repeat(); if (text.Length.Equals(0)) { using (StringWriter sw = new StringWriter(strB)) { using (HtmlTextWriter hw = new HtmlTextWriter(sw)) { dt = (DataTable)Session["dataItem"]; if (dt.Rows.Count > 0) { DataRow drall; PlaceHolder pholder = new PlaceHolder(); pholder.Controls.Add(new LiteralControl("<div ><table><tr><td colspan='6' align='center' style='font-weight:bold;font-size:18px'>REPORT on " + Text_From.Text + " to " + Text_To.Text + "</td></tr></table></div>")); pholder.Controls.Add(new LiteralControl("<table border='1'><tr style='background:#dadada;font-weight:bold;'><td align='center'>S.No</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Order ID</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Name</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Password</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Imagename</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Updated by</td>")); pholder.Controls.Add(new LiteralControl("<td align='center'>Image</td>")); pholder.Controls.Add(new LiteralControl("</tr>")); for (int i = 0; i < dt.Rows.Count; i++) { int sno = i + 1; drall = dt.Rows[i]; pholder.Controls.Add(new LiteralControl("<tr>")); pholder.Controls.Add(new LiteralControl("<td >" + sno + "</td>")); pholder.Controls.Add(new LiteralControl("<td>" + drall["id"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("<td align='right'>" + drall["username"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("<td align='right'>" + drall["password"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("<td align='right'>" + drall["imagename"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("<td align='right'>" + drall["updatedby"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("<td align='right'>" + drall["uploadimage"].ToString() + "</td>")); pholder.Controls.Add(new LiteralControl("</tr>")); } pholder.Controls.Add(new LiteralControl("</table>")); pholder.RenderControl(hw); } } } } else strB.Append(text); using (TextReader sReader = new StringReader(strB.ToString())) { List<IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet()); // here i got error foreach (IElement elm in list) { document.Add(elm); } } } catch (Exception ex) { } finally { document.Close(); } } protected void btn_pdf_Click(object sender, EventArgs e) { try { string file = "reports" + DateTime.Now.Ticks + ".pdf"; Response.Clear(); generate_pdf("", file, true, ""); Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "attachment; filename=" + file); Response.Flush(); Response.End(); } catch(Exception ex) { throw ex; } }
List<IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet()).Cast<IElement>().ToList();
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)