Convertir HTML a PDF en asp.net gracias a iTextSharp (asp.net convert html to pdf with iTextSharp)

Autor: alberto

Viernes, 16 de Octubre de 2009

Rápido y sencillo. El iTextSharp es un port de iText de Java a .Net. Te permite montar archivos PDFs on-line y a través de su HtmlParser puede convertir tus documentos html en pdf. Pero es problemático si no tienes en cuenta que no funcionará si el documento html que deseas convertir tiene algo por delante de la etiqueta de apertura <html>. Así que antes de hacer cualquier cosa, quita el doctype y otras cosas que puedan quedar por delante.

1. Consigue la iTextSharp.dll de http://sourceforge.net/projects/itextsharp/
2. Guardala en la carpeta Bin del sitio web.
3. En el documento en el que vas a trabajar pasar html a pdf pon los siguientes using:

using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html;
using System.IO;

4. Pon las siguienes líneas en un método:

Document document = new Document(PageSize.A4, 80, 50, 30, 65);
FileStream stream = new FileStream(Server.MapPath(“resultado.pdf”), FileMode.Create);
PdfWriter PDFWriter = PdfWriter.GetInstance(document, stream);
HtmlParser.Parse(document, Server.MapPath(“origen.html”));
stream.Close();
PDFWriter.Close();

5. Recuerda borrar cualquier línea por encima de la etiqueta html en el archivo “origen.html”.

- – - -
1. Download iTextSharp.dll from http://sourceforge.net/projects/itextsharp/
2. Copy to Bin directory
3. Write first on your csharp document:

using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html;
using System.IO;

4. Write the next lines inside method:

Document document = new Document(PageSize.A4, 80, 50, 30, 65);
FileStream stream = new FileStream(Server.MapPath(“result.pdf”), FileMode.Create);
PdfWriter PDFWriter = PdfWriter.GetInstance(document, stream);
HtmlParser.Parse(document, Server.MapPath(“origin.html”));
stream.Close();
PDFWriter.Close();

5. Remove all code lines before the openning tag <html>, also <doctype…

Permalink | Comentarios (5) | Compartir en otras redes

Posts Relacionados

5 Comentarios en “Convertir HTML a PDF en asp.net gracias a iTextSharp (asp.net convert html to pdf with iTextSharp)”

+ avm comentó:

Buen aporte, gracias.

+ Francisco comentó:

Hola tengo un problema. cuanda el archivo orgien.html tiene dentro una tabla y estilos
(css), cuand creo el pdf m sale un error d conversion de paragraph a table :S alguna soluicion o idea

+ admin comentó:

Hay problemas al utilizar css para tamaños y ese tipo de cosas. Lo mejor es utilizar las viejas propiedades html rowspan, width etc, dentro de las propias etiquetas html. Para meter estilos había que hacerlo por programación.

+ Arturo comentó:

Yo ya importe la dll..pero no me dejausar el objeto HtmlParser.Parse(document, Server.MapPath(“origin.html”));
que puedo hacer???

+ Mayra comentó:

Cuando se tiene una tabla en el html se debe dar algún tratamiento especial?

Deja aquí tu comentario:

Nombre (obligatorio)

Mail (obligatorio)

Web (opcional)

Tu opinión