Se puede presentar la ocasión de que necesitemos convertir código HTML a PDF (Portable Document Format), ya sea para presentar un informe, recibos de artÃculos, facilitando la portabilidad de la información (llevarlo en un pendrive, enviarlo por correo, etc.
La ventaja del PDF es que especifica toda la información necesaria para la presentación final del documento, determinando todos los detalles de cómo va a quedar. Existen muchos lectores de PDF lo que lo hace multiplataforma, asà como, contener cualquier combinación de texto, elementos de hipertexto (vÃnculos y marcadores), enlaces y miniaturas de páginas.
Podemos hacer uso de algunas de las librerÃas desarrolladas para tal fin.
1.- HTML2PDF está basado en FPDF y TCPDF, permite la conversión de HTML válido 4.01 en formato PDF, y se distribuye bajo licencia LGPL (Licencia Pública General Reducida de GNU).
Esta librerÃa ayuda en la creación de archivos PDF, pero NO convierte directamente una página HTML. El sistema mostrarÃa un error si intentas convertir una página con los tags <html>, <head>, <body> o simplemente creara el PDF sin ningún contenido.
Requiere de PHP 5 o superior para su correcto funcionamiento, ejemplo de uso:
<?php // incluimos la libreria require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php'); // almacenamos el contenido HTML $sHTML = <<<PHP <h1>Ejemplo de la librerÃa html2pdf</h1> <pre>PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de lÃnea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+. </pre> PHP; //Creamos la instancia $PDF = new HTML2PDF('P','A4','fr'); // autorizamos la impresion del HTML $PDF ->WriteHTML($sHTML); // devolvemos el PDF $PDF ->Output('html.pdf'); ?>
Sitio oficial: http://html2pdf.fr
Descargar html2pdf
dompdf a diferencia de html2pdf, no tiene restricciones con los tags HTML, permite crear PDF de paginas que incluyan CSS.
CaracterÃsticas: soporte para..
- propiedades CSS 2.1, CSS3, incluyendo @import, @media & @page
- atributos HTML 4.0
- hojas de estilos externas (local o remoto).
- tablas, incluyendo las propiedades de filas y columnas.
- imágenes GIF, JPEG, BMP, PNG (8, 24 y 32 bit con alpha channel).
- inline de PHP.
Ejemplo de uso:
<?php require_once(dirname(__FILE__)."/dompdf/dompdf_config.inc.php"); // almacenamos el contenido HTML $sHTML = <<<PHP <html><head> <title>Ejemplo de la librerÃa dompdf</title> </head><body> <pre>PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de lÃnea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+. </pre></body></html> PHP; // creamos la instancia $PDF = new DOMPDF(); // autorizamos la impresion del HTML $PDF ->load_html($sHTML); $PDF ->render(); // devolvemos el PDF $PDF ->stream("html.pdf"); ?>
Requisitos:
- PHP 5 ó superior (5.3 recomendado)
- extensión MbString
- extensión DOM (viene con PHP 5)
- Algunas fuentes: Helvetica, Times Roman, Courier y Zapf Dingbats (puede trabajar con otras fuentes previamente instaladas).
Limitaciones (Problemas conocidos)
- No es tolerante al HTML mal formado.
- tarda bastante en crear el PDF de archivos de gran tamaño.
- no es compatible con la propiedad float de CSS.
Proyecto: http://code.google.com/p/dompdf
Descargar dompdf
También disponemos de algunas herramientas online que nos permitirán convertir paginas a PDF, requiriendo solo la URL del sitio.
http://html-pdf-online.com
http://html-pdf-converter.com
- Los comentarios están siendo moderados y serán publicados en la brevedad posible.