Sigueme por RSS! RSS

Convertir de HTML a PDF


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.
No tiene dependencia de librerías externas, gracias a que utiliza R&OS PDF class.

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

0 comentarios: Suscribete a los comentarios por RSS

Publicar un comentario

- Los comentarios están siendo moderados y serán publicados en la brevedad posible.