Dompdf es una librería PHP que te ayuda a generar archivos PDF de contenido HTML. Es muy sencillo convertir contenido HTML a PDF en PHP en Dompdf. Si tu aplicación está desarrollada con CodeIgniter, puedes utilizar Dompdf para generar archivos PDF. Por eso, en este tutorial te mostraremos cómo convertir contenido HTML a PDF en CodeIgniter utilizando Dompdf.
Controlador
- Obtener el HTML de la vista welcome_message
- Cargar la librería pdf de CodeIgniter para utilizar la clase Dompdf
- Convertir contenido HTML y generar un PDF utilizando Dompdf
<?php defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index(){
$this->load->view('welcome_message');
// Get output html
$html = $this->output->get_output();
// Load pdf library
$this->load->library('pdf');
// Load HTML content
$this->dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation
$this->dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$this->dompdf->render();
// Output the generated PDF (1 = download and 0 = preview)
$this->dompdf->stream("welcome.pdf", array("Attachment"=>0));
}
}
Librería
Librería PDF de CodeIgniter (Pdf.php)La librería PDF de CodeIgniter es una librería personalizada que te ayuda a convertir HTML a PDF mediante DOMPDF.
<?php defined('BASEPATH') OR exit('No direct script access allowed');Librería Dompdf (/dompdf)
// reference the Dompdf namespace
use DompdfDompdf;
class Pdf
{
public function __construct(){
// include autoloader
require_once dirname(__FILE__).'/dompdf/autoload.inc.php';
// instantiate and use the dompdf class
$pdf = new DOMPDF();
$CI =& get_instance();
$CI->dompdf = $pdf;
}
}
?>
La librería personalizada PDF utiliza Dompdf para generar PDF. Por lo tanto, debes incluir la librería Dompd para instanciar la clase Dompdf.
Métodos útiles de Dompdf
Los siguientes métodos de Dompdf son muy útiles a la hora de convertir contenidos:- loadHtml(): Carga el contenido HTML
- $str (string) – Obligatorio. Define el HTML a cargar
- $encoding (string) – Opcional. Define la codificación
- loadHtmlFile(): Carga contenido de un fichero HTML.
- $file (string) – Obligatorio. Define el path a cargar.
- Output(): Devuelve el PDF como un string.
- $options (array) – Opcional. Define quieres habilitar la compresión en el flujo de contenido. (0|1)
- render(): Renderiza el HTML a PDF
- setBasePath(): Define el path para incluir CSS e imágenes externos
- $basePath (string) – El path que utilizaremos para cargar contenido externo
- setPaper(): Define el tamaño del papel y la orientación.
- $size (string|array) – 'letter', 'legal', 'A4', etc
- $orientation (string) – 'portrait' o 'landscape'
0 Comentarios