Neste artigo, vamos ensinar como criar um arquivo .pdf à partir de um código em HTML usando PHP. Para isto vamos utilizar a famosa biblioteca Dom PDF. Você pode baixá-la clicando neste link. Baixe o arquivo zipado e extraia seu conteúdo para uma pasta qualquer. Neste caso, criei uma pasta chamada dompdf.

Porém, o Dom PDF não funciona sozinho. Você precisa baixar duas outras dependências e salvar todas na pasta /lib do dompdf, são essas:

Dependência 1 – PHP Font Lib
Dependência 2 – PHP SVG Lib

Feito isso, crie um arquivo .php na mesma pasta onde a pasta /dompdf está alojada e insira o seguinte código:

<?php

// chamando os arquivos necessários do DOMPdf
require_once 'dompdf/lib/html5lib/Parser.php';
require_once 'dompdf/lib/php-font-lib-master/src/FontLib/Autoloader.php';
require_once 'dompdf/lib/php-svg-lib-master/src/autoload.php';
require_once 'dompdf/src/Autoloader.php';

// definindo os namespaces
Dompdf\Autoloader::register();
use Dompdf\Dompdf;

// inicializando o objeto Dompdf
$dompdf = new Dompdf();

// coloque nessa variável o código HTML que você quer que seja inserido no PDF
$codigo_html = "<h1>Olá mundo!</h1><p>Geramos o arquivo com o dom pdf, ihul!</p>";

// carregamos o código HTML no nosso arquivo PDF
$dompdf->loadHtml($codigo_html);

// (Opcional) Defina o tamanho (A4, A3, A2, etc) e a oritenação do papel, que pode ser 'portrait' (em pé) ou 'landscape' (deitado)
$dompdf->setPaper('A4', 'portrait');

// Renderizar o documento
$dompdf->render();

// pega o código fonte do novo arquivo PDF gerado
$output = $dompdf->output();

// defina aqui o nome do arquivo que você quer que seja salvo
file_put_contents("nome_do_arquivo.pdf", $output);

// redirecionamos o usuário para o download do arquivo
die("<script>location.href='nome_do_arquivo.pdf';</script>");

?>

Dúvidas ou problemas? Disponibilizamos nosso código original (funcionando) para o download à seguir.

[wpdm_package id='355']