+1

Preencher um arquivo RTF e gerar o PDF

criado por Patrick Espake em 13/06/2007 10:04am
Crie um arquivo chamando preencher_rtf_gerar_pdf.php e insira o conteúdo abaixo:

<?php
// Inclui a classe.
include("rtf2pdf.class.php");

// Instância o objeto.
$rtf2pdf = new Rtf2Pdf();

// Define o nome do arquivo de template.
$rtf2pdf->setTemplateFile("template.rtf");

// Define o diretório onde está o template.rtf e onde vai ser gerado o arquivo PDF.
$rtf2pdf->setDirFiles("C:/digite_aqui_o_diretorio_onde_estao_os_arquivos/");

// Onde existir no template.rtf << data >>, << nome >>, << texto >>, << endereco >>, << bairro >> e << cidade >>, será substituido pelo segundo parâmetro valor nas declarações abaixo.
$rtf2pdf->setVarsAndAttributes("<< data >>", "Curitiba, 18 de maio de 2007");
$rtf2pdf->setVarsAndAttributes("<< nome >>", "Patrick Espake");
$rtf2pdf->setVarsAndAttributes("<< texto >>", "O conhecimento é o processo de acumular dados; a sabedoria reside na sua simplificação.");
$rtf2pdf->setVarsAndAttributes("<< endereco >>", "Rua XV de Novembro, 78");
$rtf2pdf->setVarsAndAttributes("<< bairro >>", "Centro");
$rtf2pdf->setVarsAndAttributes("<< cidade >>", "Curitiba");

// Nome do arquivo pdf que vai ser criado.
$rtf2pdf->setPdfFileName("nome_do_meu_arquivo.pdf");

// Preenche o template e cria o PDF com os dados preenchidos. Retona o nome do PDF, o nome do arquivo rtf, diretório dos arquivos e nome do arquivo rtf template.
$rtf2pdf->makePdf();
?>

O arquivo rtf2pdf.class.php é a classe, nesse script estão as funções que preenchem o arquivo rtf e geram o pdf.

O arquivo preencher_rtf_gerar_pdf.php é o script que define o arquivo template, os valores que devem ser substituídos no arquivo template, define o nome do arquivo pdf que irá ser gerado e chama a função que cria o arquivo pdf.

Você deve criar um arquivo de template com o formato rtf, nesse arquivo você deve definir os lugares que virão os dados do php, crie uma espécie de variável no texto, digitando por exemplo: << nome >>, << endereco>, << cidade >> ou qualquer nome que você queira, mas sempre deixando entre os sinais de maior ou menor. Você deve ter percebido que no arquivo preencher_rtf_gerar_pdf.php existe algumas linhas desse tipo: $rtf2pdf->setVarsAndAttributes("<< nome >>", "Patrick Espake"); essa linha diz que onde no arquivo template estiver << nome >> para substituir por "Patrick Espake", você pode criar quantas variáveis quiser no arquivo de template e depois setar o seu valor no arquivo php.

O script php abre o template rtf e preenche com os dados informados, gerando um arquivo temporário em rtf, a partir desse arquivo temporário é criado o pdf, e por final o arquivo temporário rtf é apagado automaticamente.

Não me preocupei em explicar todo código fonte, pois já deixei tudo bem comentado.

Você pode baixar o arquivo php e um exemplo de template http://www.patrickespake.com/pe_scripts/rtf2pdf.zip

Espero que possa ter ajudado.

Patrick Espake
site: www.patrickespake.com
"O conhecimento só pode evoluir quando é compartilhado."

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)