Como exportar uma página HTML para PDF
Exportar uma página HTML para PDF é um recurso muito utilizado ao gerar relatórios e formulários. Veja como fazer isso utilizando a biblioteca mPDF.(...)
Autor: Redação Impacta
Exportar uma página HTML ou PHP para PDF é um recurso muito utilizado quando é preciso gerar relatórios, formulários e outras informações que o usuário precise salvar em uma página. Atualmente existem várias formas de exportar uma página HTML em PDF, dentre elas, vamos mostrar como utilizar a biblioteca mPDF em PHP para fazer essa exportação de forma simples e eficiente.
Instalação mPDF
- Faça o download dos arquivos de instalação mPDF .
- Após concluído o download, crie uma pasta chamada mpdf na pasta raiz de arquivos do seu servidor web e extraia todos os arquivos para essa pasta.
- Forneça permissões de escrita nas subpastas “/ttfontdata”,”/tmp” e “/graph_cache”.
Exportar uma página HTML/ PHP
Crie a seguinte página em PHP e salve com o nome de index.php, dentro da raiz do seu servidor web. Essa página é bem simples, e vai servir de exemplo para falicitar o entendimento do funcionamento da biblioteca mPDF.
- <?php
- $html = ‘
- <h1>Página de Exemplo</h1>
- <p>Exportanto código HTML para PDF utilizando a função mPDF()</p>
- ‘ ;
- include(“../mpdf.php”);
- $mpdf=new mPDF();
- $mpdf->WriteHTML($html);
- $mpdf->Output();
- exit;
- ?>
- Na linha 1, inicia-se um bloco de código-fonte em PHP.
- Na linha 2, foi criada uma variável para armazenar todo o código HTML da página, com o nome de $html.
- Na llinha 6, é feita a inclusão da classe mPDF.php ao código-fonte.
- Na linha 7 é criado um objeto do tipo mPDF.
- Na linha 8 utiliza-se o método WriteHTML(), passado como parâmetro o conteúdo da página HTML que foi armazenado na variável $html.
- Na linha 9, o método Output() exporta a pagina em PDF.
- Na linha 10, encerra a exportação com o comando exit.
- Na linha 11, encerra-se o bloco de código-fonte PHP.
Pronto, após seguir corretamente os passos anteriores, você terá conseguido exportar uma página HTML/PHP para PDF com sucesso.
Dicas importantes
Essa página exportada é bem simples e foi criada apenas para ilustrar o funcionamento da biblioteca mPDF. Caso você precise exportar um documento mais elaborado, é possível formatar o seu documento utilizando códigos CSS na própria página HTML. A exportação irá identificar a formatação e aplicará essas definições na página em PDF exportada.
Muitas vezes, ao tentar exportar um arquivo muito grande em PDF podem ocorrer problemas com o apache. Para evitar que isso ocorra na sua aplicação, utilize o método ini_set() e o memory_limit(), ambos do PHP, para aumentar a memória alocada. Um exemplo válido dessa configuração seria: “ini_set(“memory_limit”, “32M”);”.
Caso você precise entender melhor o funcionamento da classe mPDF, do processo de exportação ou ainda pesquisar configurações adicionais, acesse o manual disponível no site oficial do mPDF para tirar suas dúvidas.
Seja um especialista em PHP
Agora que você já aprendeu como exportar as suas páginas em HTML para PDF de forma simples, que tal aperfeiçoar os seus conhecimentos na linguagem de programação PHP?
Com o curso de PHP Módulo I da Impacta, você será capaz de desenvolver páginas web com conteúdo dinâmico e interativo, utilizando a versão mais atual da linguagem PHP.
Já com o PHP Módulo II, você estará apto a desenvolver aplicações dinâmicas, interativas e seguras para web, criando no padrão de projetos MVC.
estou com esse erro nos relatorios, pode me dizer oq seria??
A PHP Error was encountered
Severity: 8192
Message: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead
Filename: includes/functions.php
Line Number: 74
A PHP Error was encountered
Severity: 8192
Message: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead
Filename: includes/functions.php
Line Number: 75
Olá, William.
O PHP retorna que a função preg_replace foi descontinuado e pede para utilizar a função preg_replace_callback.
Provavelmente você está usando uma versão do PHP acima da 5.5.0. Onde está função foi descontinuada conforme o manual do PHP (http://php.net/manual/en/function.preg-replace.php).
Entre na página de download (http://www.mpdf1.com/mpdf/index.php?page=Download) do Mpdf e encontre a versão correta para a sua versão do PHP.
Esperamos te ajudar! Abraços.
E se eu tiver código php, por exemplo:
Ele iria exportar para pdf?
Olá, Paulo. Na verdade você estará exportando um página HTML com PHP, mas ele não exporta propriamente o código PHP.
Espero ter ajudado!
Bom dia,
Eu preciso importar para uma função dentro do controlador, o html
$html = ‘
Página de Exemplo
Exportanto código HTML para PDF utilizando a função mPDF()
‘ ;
Essa parte vinda de outro arquivo, seria possível?
Ficaria mais ou menos assim
$mpdf = new \Mpdf\Mpdf([‘tempDir’ => __DIR__ . ‘/module/Application/view/application/aluno/teste.phtml’]);
$mpdf->WriteHTML($teste);
$mpdf->Output();
Mas ele abre com erro