Página 1 de 1

HTML to PDF

NotaPublicado: 2013-05-08 10:16 @469
por reLlene
¡¡Hola chicos!! ¿Conocéis algún módulo que permita generar un pdf en base a un html? Pude observar en CPAN el PDF::FromHTML pero éste no interpreta los estilos (CSS) y me estoy viendo obligado a tener que VOLVER a generar estas plantillas (html) a la vieja usanza, con tablas y a puro marcado html :?

Although PDF::FromHTML will work with both HTML and XHTML formats, it is not designed to utilise CSS.

This means any HTML using external or inline CSS for design and layout, including but not limited to: images, backgrounds, colours, fonts etc... will not be converted into the PDF.

:(

Re: HTML to PDF

NotaPublicado: 2013-05-08 11:11 @507
por explorer
Hay otro módulo: HTML::HTMLDoc, que hace uso de una utilidad externa: htmldoc. Por aquí ya hemos hablado del tema.

Pero no creo que sean capaces de interpretar los estilos CSS... por la sencilla razón de que los únicos que son capaces de interpretarlos en tiempo real son los navegadores web y los editores de páginas web. Sospecho que esos intérpretes no son nada sencillos.

Otras opciones son: Template::Flute::PDF, con un limitado soporte para CSS; y PDF::WebKit, que usa el motor WebKit para el despliegue de código HTML.

¿Y por qué necesitas convertir de HTML a PDF? ¿Quién ha generado ese HTML?

Si tu tienes los datos de partida, puedes generar el PDF con otras herramientas.

Re: HTML to PDF

NotaPublicado: 2013-05-08 14:01 @626
por reLlene
explorer, ¡¡gracias por contestar!!

Mira... Cuento con los datos de partida en la DB y genero ese HTML con un script. En ese script hago uso del módulo HTML::Template y solo le envío parámetros a las plantillas para que muestren una u otra cosa. El resultado: una factura (siempre). El punto es que ahora necesito poner una botonera (enlace) para que el usuario pueda descargarse la misma y que sea en formato PDF.

Mi intención es generar ese pdf en base al ya generado html o al menos generarlo ¡¡¡lo más parecido posible!!! :?

Lo lamentable del html es que ¡¡los estilos intervienen en todo!! :(

Re: HTML to PDF

NotaPublicado: 2013-05-08 15:45 @698
por explorer
Lo siento, pero la única solución (la buena y la mejor) es la de hacer una plantilla en formato PDF y seguir el mismo guión de trabajo que con HTML::Template.

En estos foros hemos comentado alguna vez sobre plantillas PDF. Y en CPAN hay módulos para leer PDF como plantillas. Curiosamente, hay dos que se llaman igual: PDF::Template (1 y 2). En las páginas de manual de estos dos se comenta que su funcionamiento es parecido al de HTML::Template.

Por aquí, hay alguien que ha ido un paso más: genera todo el pdf, de forma manual, línea a línea, caja a caja, texto a texto, e insertando imágenes y logotipos, con módulos como PDF::API2. Como son pdf sencillos, se generan muy rápido. Otra opción es generarlo una vez y dejarlo grabado, ya que este módulo también permite leer un pdf ya hecho, y agregarle cambios. Y hay otro, CAM::PDF, que permite cargar un pdf que tenga campos de formularios, y rellenarlos con los textos que quieras, con lo que funciona al estilo de una plantilla. La cuestión es generar antes el pdf con esos campos de formulario.

Re: HTML to PDF

NotaPublicado: 2013-05-17 14:02 @626
por reLlene
Gracias explorer, lo haré de ese modo que, como tu dices, ¡¡es la mejor y única solución!! Te agradezco nuevamente compañero. Un saludo cordial para ti. :)