Usuário com melhor resposta
gerar pdf de pagina gerada

Pergunta
-
Respostas
-
Darth,
Dê uma olhada nesse thread e veja se te ajuda:
http://social.msdn.microsoft.com/Forums/pt-BR/aspnetpt/thread/049133ce-2ce0-4b6e-9194-53b62e12ddbe
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
O link que o nosso amigo mandou é muito bom também.
Qualquer coisa, veja estes dois links abaixo, são artigos que podem te ajudar. Um gera pdf a partir do reportviewer e outro gera word (caso queira dar mais opções ao seu cliente).
http://ecode10.com/artigo/25/Gerando+word+com+Visual+Studio.NET+2005.aspx
http://ecode10.com/artigo/1129/ReportViewer+sem+DataSet+Tipado+e+gerando+PDF.aspx
Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.
Mauricio Junior - Comunidade www.ecode10.com- Sugerido como Resposta Mauricio-Junior quarta-feira, 21 de março de 2012 12:32
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
Dath,
Inclua o atributo EnableEventValidation="false" na diretiva de página e veja se resolve o seu problema.
Ex:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" EnableEventValidation="false" %>
Obs: Eu testei e deu certo.
Abraço,
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
-
Darth,
Segue um exemplo:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" EnableEventValidation="false" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Panel ID="pnl" runat="server"> <asp:Image runat="server" ID="logo" ImageUrl="~/Images/login.gif" /> </asp:Panel> <asp:Button ID="Button1" runat="server" Text="Button" /> </div> </form> </body> </html>
Imports iTextSharp.text Imports iTextSharp.text.pdf Imports iTextSharp.text.html Imports iTextSharp.text.html.simpleparser Imports System.IO Partial Class _Default Inherits System.Web.UI.Page Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click ConverteAspx2Pdf() End Sub Private Sub ConverteAspx2Pdf() Dim attachment As String = "attachment; filename=ExportacaoAspx2Pdf.pdf" Response.ClearContent() Response.AddHeader("content-disposition", attachment) Response.ContentType = "application/pdf" Dim stw As StringWriter = New StringWriter() Dim htextw As HtmlTextWriter = New HtmlTextWriter(stw) logo.ImageUrl = logo.ImageUrl.Replace("~", Me.Request.PhysicalApplicationPath) pnl.RenderControl(htextw) Dim document As Document = New Document() PdfWriter.GetInstance(document, Response.OutputStream) document.Open() Dim str As StringReader = New StringReader(stw.ToString()) Dim htmlworker As HTMLWorker = New HTMLWorker(document) htmlworker.Parse(str) document.Close() Response.Write(document) Response.End() End Sub End Class
Abraço,
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:14
Todas as Respostas
-
Darth,
Dê uma olhada nesse thread e veja se te ajuda:
http://social.msdn.microsoft.com/Forums/pt-BR/aspnetpt/thread/049133ce-2ce0-4b6e-9194-53b62e12ddbe
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
O link que o nosso amigo mandou é muito bom também.
Qualquer coisa, veja estes dois links abaixo, são artigos que podem te ajudar. Um gera pdf a partir do reportviewer e outro gera word (caso queira dar mais opções ao seu cliente).
http://ecode10.com/artigo/25/Gerando+word+com+Visual+Studio.NET+2005.aspx
http://ecode10.com/artigo/1129/ReportViewer+sem+DataSet+Tipado+e+gerando+PDF.aspx
Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.
Mauricio Junior - Comunidade www.ecode10.com- Sugerido como Resposta Mauricio-Junior quarta-feira, 21 de março de 2012 12:32
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
Carlos, eu converti o codigo que vc sugeriu para VB.NET, mas ele apresenta um erro na linha: Me.RenderControl(htextw)
o erro que apresenta é: RegisterForEventValidation só pode ser chamado durante Render();
Segue o código:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click ConverteAspx2Pdf() End Sub private sub ConverteAspx2Pdf() Dim attachment As String = "attachment; filename=ExportacaoAspx2Pdf.pdf" Response.ClearContent() Response.AddHeader("content-disposition", attachment) Response.ContentType = "application/pdf" Dim stw As StringWriter = New StringWriter() Dim htextw As HtmlTextWriter = New HtmlTextWriter(stw) Me.RenderControl(htextw) Dim document As Document = New Document() PdfWriter.GetInstance(document, Response.OutputStream) document.Open() Dim str As StringReader = New StringReader(stw.ToString()) Dim htmlworker As HTMLWorker = New HTMLWorker(document) htmlworker.Parse(str) document.Close() Response.Write(document) Response.End() End Sub
Obrigado! -
-
Eu coloquei o bloco do html inteiro dentro de um Panel e fiz:
panel1.RenderControl(htextw)
ele de fato deu certo, pegou todo o html que ta dentro, porem ele não consegue fazer com imagem, existe alguma forma diferente, pois dá erro no caminho da imagem, conforme erro abaixo:
Não foi possível localizar uma parte do caminho 'C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0\imagens\logo.gif'.
eu acredito que por padrão, ele esteja tentando passar um caminho fisico da minha maquina, sera que devo que colocar o caminho fisico mesmo do servidor para ele entender?
Darth Tsurth
-
Dath,
Inclua o atributo EnableEventValidation="false" na diretiva de página e veja se resolve o seu problema.
Ex:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" EnableEventValidation="false" %>
Obs: Eu testei e deu certo.
Abraço,
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:15
-
-
-
-
Darth,
Segue um exemplo:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" EnableEventValidation="false" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Panel ID="pnl" runat="server"> <asp:Image runat="server" ID="logo" ImageUrl="~/Images/login.gif" /> </asp:Panel> <asp:Button ID="Button1" runat="server" Text="Button" /> </div> </form> </body> </html>
Imports iTextSharp.text Imports iTextSharp.text.pdf Imports iTextSharp.text.html Imports iTextSharp.text.html.simpleparser Imports System.IO Partial Class _Default Inherits System.Web.UI.Page Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click ConverteAspx2Pdf() End Sub Private Sub ConverteAspx2Pdf() Dim attachment As String = "attachment; filename=ExportacaoAspx2Pdf.pdf" Response.ClearContent() Response.AddHeader("content-disposition", attachment) Response.ContentType = "application/pdf" Dim stw As StringWriter = New StringWriter() Dim htextw As HtmlTextWriter = New HtmlTextWriter(stw) logo.ImageUrl = logo.ImageUrl.Replace("~", Me.Request.PhysicalApplicationPath) pnl.RenderControl(htextw) Dim document As Document = New Document() PdfWriter.GetInstance(document, Response.OutputStream) document.Open() Dim str As StringReader = New StringReader(stw.ToString()) Dim htmlworker As HTMLWorker = New HTMLWorker(document) htmlworker.Parse(str) document.Close() Response.Write(document) Response.End() End Sub End Class
Abraço,
Carlos Eduardo Ferreira
- Marcado como Resposta Dudú quarta-feira, 21 de março de 2012 17:14
-