Inquiridor
PDF não é gerado pq ?

Pergunta
-
using iTextSharp.text;
using iTextSharp.text.html.simpleparser;
using iTextSharp.text.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();
Todas as Respostas
-
É o mesmo problema dessa pergunta aqui ?
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Editado Jean Carlos Galhardi segunda-feira, 28 de julho de 2014 14:58
-
-
Aparece alguma mensagem de erro ?
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Ele executa, mas só não baixa o PDF. não mostra nada de erro.
Esse exemplo faz a mesma coisa.
DataTable dt = (DataTable)Session["dt"];
string attachment = "attachment; filename=prueba.pdf";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/pdf";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
// Crear un form para contener el grid
HtmlForm frm = new HtmlForm();
GridView1.Parent.Controls.Add(frm);
GridView1.AllowPaging = false;
GridView1.EnableViewState = false;
GridView1.DataSource = dt;
GridView1.DataBind();
frm.Attributes["runat"] = "server";
frm.Controls.Add(GridView1);
frm.RenderControl(htw);
Document document = new Document();
PdfWriter.GetInstance(document, Response.OutputStream);
document.Open();
StringReader str = new StringReader(sw.ToString());
HTMLWorker htmlworker = new HTMLWorker(document);
htmlworker.Parse(str);
document.Close();
Response.Write(document);
Response.End();
-
-
É difícil saber o que não está funcionando se nem ao menos gera um erro.
Tente debugar e verificar os valores das propriedades, os valores das variáveis, só assim você vai descobrir o porque não está funcionando.
Caso não encontrar algo errado, minha sugestão é procurar outro exemplo.Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
-
http://somewebguy.wordpress.com/2009/05/08/itextsharp-simplify-your-html-to-pdf-creation/
http://hspinfo.wordpress.com/2008/01/12/how-to-convert-html-content-to-pdf-file/
Você não conseguir com esses exemplos teve fazer com o "PDFizer" ele é bem parecido com o iTextBox.
http://www.codeproject.com/Articles/5872/Pdfizer-a-dumb-HTML-to-PDF-converter-in-C
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.