Gerar um pdf pelo PHP (DOMPDF).

Vamos falar um pouco da class dompdf (Download) que serve pra gerar arquivos pdf através do php.

Antes de começar a utilizar a classe, verifique se o php.ini esta com as seguintes configurações:

Comentar e Descomentar as seguintes linhas:

;extension=php_cpdf.dll
;extension=php_domxml.dll
;extension=php_pdf.dll
extension=php_sdo.dll
extension=php_sdo_das_xml.dll

OBS.: Se utilizar o XAMPP deve modificar o arquivo que está em Apache/bin

Tudo OK? Vamos ao que interessa.

Eu fiz essa função bem básica para gerar o pdf.

<?php
include_once("../dompdf/dompdf_config.inc.php");
function geraPDF($titulo, $html, $tipo = "P") {
	$dompdf = new DOMPDF();
	if ($tipo == "L") {
		$dompdf->set_paper("legal", "landscape"); // Altera o papel para modo paisagem.
	}
	$dompdf->load_html($html); // Carrega o HTML para a classe.
	$dompdf->render();
	$pdf = $dompdf->output(); // Cria o pdf
	$arquivo = "../arquivos/".$titulo; // Caminho onde será salvo o arquivo.
	if (file_put_contents($arquivo,$pdf)) { //Tenta salvar o pdf gerado
		return true; // Salvo com sucesso.
	} else {
		return false; // Erro ao salvar o arquivo
	}
}
?>

Para chamar a função deve se passar três parâmetros: nome do arquivo, html e formato da folha.
Exemplo:

$nomeDoArquivo = "nomedoarquivo.pdf";
$tipoFolha = "P"; // P = Retrato | L = Paisagem
$html = "<table border='1'><tr><th>Titulo</th></tr>";
$html.= "<tr><td>Exemplo de Tabela</td></tr></table>";

if (geraPDF($nomeDoArquivo, $html, $tipoFolha)) {
	echo "Arquivo Gerado: ".$nomeDoArquivo."\n";
} else {
	echo "Erro ao gerar o arquivo.";
	return;
}

Espero que tenha ajudado.

Mais informações sobre a classe na documentação do domPDF.

Abraços,
José Luiz Neto

Facebook

Tags: , , ,

About JLNeto