Inquiridor
Conversão HMTL para PDF não aplica estilos CSS.

Pergunta
-
Buenas,
Estou tentando converter HTML para PDF, fazer uma exportação.
Até consegui fazer gerar o PDF usando o iTextSharp versão 5.3.4.0, mas não tem jeito de conseguir aplicar estilos.
Tentei fazer o Load dos estilos, adicionar css, adicionar tag style (que não interpreta) e nada funciona.
Já tentei algo assm (o exemplo usa gridview, que não é meu caso, mas gerou o PDF igual) :
http://hspinfo.wordpress.com/2008/01/12/how-to-convert-html-content-to-pdf-file/
E este também:
http://www.codingasp.net/2011/10/generate-pdf-with-aspnet-and-itextsharp.html
Ao clicar para imprimir, por exemplo, e ao invés de selecionar a impressora, selecionar o PDF ele sai certinho do jeito que preciso, mas com imagem e linhas desnecessárias. Preciso gerar isso via código.
Alguém já passou por algo semelhante ou sabe algum outro componente que funcione ???
Agradeço qualquer ajuda, está complicado.
Iterar é humano, a recursão é divina. Espero ter ajudado, att.
- Editado alvarok terça-feira, 4 de dezembro de 2012 11:33
Todas as Respostas
-
O itextsharp é um gerador de relatório para pdf, basta vc usar as configurações de fonte e com relação a ordenação basta vc fazer o align do paragrafo, não tem como aplicar css no itextsharp a não ser que vc faça o text em uma página html e faça algo para gerar isso em pdf.
Junior
-
Pois é,
Só que os parágrafos e espaçamentos estão todos definidos nos estilos e são antigos, não posso simplesmente mudar.
Alguns são escritos em tempo de execução.
Se funcionasse eu escreveria todos os estlios/classes dentro de uma tag style, mas está escrito dentro de uma tag style não é interpretado, aparece todo escrito no pdf.
Só precisava que o pdf fosse gerado mantendo os estilos da página, como acontece no caso da impressão como citei antes.
Por isso acho que terei que usar algum outro gerador. Aceito sugestões.
Iterar é humano, a recursão é divina. Espero ter ajudado, att.
- Editado alvarok terça-feira, 4 de dezembro de 2012 12:25
-
Varito, tenho em algumas páginas a montagem de relatório eu faço dentro de um label, declaro o label e monto toda a estrutura no codebehind exemplo :
lbltext.text = "<table>"
lbltext.text += "<tr>"
Ai vc pode aplicar seu css criando div e associando isso a um css, sendo que tem algumas desvantagens, não tem como gerar isso em pdf, não tem como controlar quebra de página.
Se te servir assim é uma saída.
Junior
-
-
Infelizmente gerar imagem não seria saída, pois são documentos.
Estes componentes fazem o que preciso, por exemplo:
http://www.html-to-pdf.net/Support.aspx#csharp
http://www.evopdf.com/evopdfdemo/default.aspxO único porém é que a versão free/demo põe uma maldita marca d'água. Senão os problemas estariam resolvidos.
Iterar é humano, a recursão é divina. Espero ter ajudado, att.
-
Outro que funciona, mas põe marca d'água:
http://www.essentialobjects.com/Products/EOPdf/HtmlToPdf.aspx
Iterar é humano, a recursão é divina. Espero ter ajudado, att.