+1

Transformando documentos DOC, ODT ou RTF para PDF

criado por Patrick Espake em 04/06/2007 7:37pm
Agora vamos criar um arquivo PHP chamando criar_pdf.php, esse arquivo deverá ter o seguinte conteúdo:

<?php
// Inclui o arquivo da classe.
include("doc2pdf.class.php");
	
// Cria o objeto.
$doc2pdf = new Doc2Pdf();
	
// Nome do arquivo do doc, odt ou rtf.
$doc2pdf->setTemplateFile("meu_arquivo.doc");
	
// Nome do arquivo do pdf que será gerado.
$doc2pdf->setPdfFileName("meu_pdf.pdf");
	
// Diretório onde os arquivos estão localizados, é necessário usar o caminho completo.
$doc2pdf->setDirFiles("C:/apache/www/pdf/");
	
// Cria o arquivo pdf.
$doc2pdf->makePdf();
?>

Para gerar o PDF é só rodar o arquivo criar_pdf.php e o PDF será gerado na pasta definida no $doc2pdf->setDirFiles("C:/apache/www/pdf/"), no nosso caso na pasta C:\apache\www\pdf\.

A linha $doc2pdf->makePdf() retorna um array com as informações do nome do PDF, o diretório e o nome do arquivo de template. Essas informações podem ser usadas depois para redirecionar o browser para mostrar o PDF, após ser gerado.

Como foi comentado no começo desse artigo, esse código roda perfeitamente no ambiente Windows, no ambiente Linux não consegui descobrir uma solução, caso alguém saiba como fazer, favor avisar. Como a maioria dos servidores roda Linux, a solução em Linux vai ser bem mais interessante.

Espero que possa ter ajudado!

Abraços,
Patrick Espake

Comentários:

Mostrando 1 - 6 de 6 comentários
Raimundo Luiz disse:
alguem pode me dizer prq, na minha aplicação ta dando "O arquivo de template especificado não existe."
30/11/2010 1:37pm (~10 anos atrás)

king m disse:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `com.sun.star.ServiceManager': A execução no servidor falhou ' in C:\apache2triad\htdocs\doc2pdf.class.php:72 Stack trace: #0 C:\apache2triad\htdocs\doc2pdf.class.php(72): com->com('com.sun.star.Se...') #1 C:\apache2triad\htdocs\doc2pdf.class.php(49): Doc2Pdf->word2pdf() #2 C:\apache2triad\htdocs\criar_pdf.php(19): Doc2Pdf->makePdf() #3 {main} thrown in C:\apache2triad\htdocs\doc2pdf.class.php on line 72


boas esta me dando este erro alguem me podia ajudar.....
09/11/2007 8:28am (~13 anos atrás)

Octávio disse:
Muito bom o artigo.
Por acaso encontrou como resolver a questão no Linux?
20/07/2007 7:01am (~13 anos atrás)

Patrick, esse artigo é ótimo e bom esplicativo, parabens, nos falamos na aula.
10/07/2007 12:14pm (~13 anos atrás)

testei aqui é deu tudo certo...
12/06/2007 10:57pm (~13 anos atrás)

nothing disse:
Ótimo artigo... parabéns !!!
08/06/2007 11:12am (~13 anos atrás)

Novo Comentário:

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