PHP Convertir HTML a PDF


INTRODUCCIÓN

Existen muchas herramientas en php para crear un pdf pero se preguntaran ¿Que ventaja tiene esta herramienta por encima de todas las demás?. Pues es lo fácil y versátil que es crear un documento pdf. Prácticamente dompdf convierte un html en pdf a través de php, lo que nos da muchas ventajas las cuales describo a continuación:

Ventajas:

  • Versátil (Puede convertir html a pdf o puedes crear un pdf con texto y coordenadas).
  • Puedes crear un pdf a través de un html que no este en tu sistema (Solo requieres pasarle la url).
  • Es muy ligero.
  • compatible con CSS.
  • Opensource.


Desventajas:

  • No es compatible con todas las funciones de CSS.
  • Es conveniente crear nuestro HTML a convertir para evitar incompatibilidades.
  • Tiene un limite en el tamaño del HTML a convertir.


PROCEDIMIENTOS

Descargamos y descomprimimos dompdf desde esta url: https://github.com/dompdf/dompdf/releases

Creamos un archivo index.php con este codigo:


<?php 
// Jalamos las librerias de dompdf
require_once 'dompdf/autoload.inc.php';
use Dompdf\Dompdf;
// Inicializamos dompdf
$dompdf = new Dompdf();
// Le pasamos el html a dompdf
$dompdf->loadHtml('hello world');
// Colocamos als propiedades de la hoja
$dompdf->setPaper("A4", "landscape");
// Escribimos el html en el PDF
$dompdf->render();
// Ponemos el PDF en el browser
$dompdf->stream();
?>

Si queremos crear un pdf desde un archivo externo podemos usar este codigo:


<?php 
// Guardamos el contenido de contenido.php en la variable html
ob_start();
require "contenido.php";
$html = ob_get_clean();
// Jalamos las librerias de dompdf
require_once 'dompdf/autoload.inc.php';
use Dompdf\Dompdf;
// Inicializamos dompdf
$dompdf = new Dompdf();
// Le pasamos el html a dompdf
$dompdf->loadHtml($html);
// Colocamos als propiedades de la hoja
$dompdf->setPaper("A4", "landscape");
// Escribimos el html en el PDF
$dompdf->render();
// Ponemos el PDF en el browser
$dompdf->stream();
?>



contenido.php

<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<style>body{font-size: 16px;color: black;}</style>
<title>Title</title>
</head>
<body>
<h2>Hello</h2>
<img src="logo.png"></img>
</body>
</html>









Comentarios

Facebook Like

Entri Populer

hackear wifi con kali linux 📡

Instalar Netbeans 10 en Windows 10

Instalar netbeans 10 en ubuntu 18.04