2012-02-15 21 views
8

Attualmente sto generando più file .docx usando PHPWord. Devo trovare un modo per combinare questi file docx e salvarli come 1 file pdf. C'è un modo in cui questo può essere fatto?Converti docx in pdf usando PHP

risposta

12

Aprire il docx generata con PHPDOCX http://www.phpdocx.com/

require_once 'phpdocx_pro/classes/TransformDoc.inc'; 
    $docx = new TransformDoc(); 
    $docx->setStrFile('document.docx'); 
    $docx->generateXHTML(); 
    $html = $docx->getStrXHTML(); 

Inoltre, è possibile esportare il docx in PDF con

$docx->generatePDF(); 
+0

Sì, se ho intenzione di farlo potrei anche acquistare PHPDOCX e utilizzarlo per generare il docx. Stavo pensando di farlo comunque; sto solo cercando di vedere se c'è un'alternativa gratuita là fuori. Inoltre, non sono un fan di acquistare una nuova licenza per ogni dominio/sottodominio. – Keith

+0

Ho appena provato e non funziona molto bene ... Parto da un documento WORD2007, generato con PHPWord (contiene tabelle, foto, ... ma senza grafici) e PHPDOCX produce un file PDF ma con alcuni dati sono visualizzato ma non tutto (in realtà, la maggior parte dei dati non vengono visualizzati) e nessuna immagine ... Puoi vedere qui: da [link] https://www.box.com/s/cbf2243c6cb0cf782a08 e il PDF convertito usando il tuo codice è: [link] https://www.box.com/s/600a4f83d4db987baa1e –

+0

Peccato che non funzioni con la versione community di phpdocx. "DOMPDF di classe non trovato" – user2718671

-2
/** 
    * return the pdf stream as a string returned from the function 
    */ 
    function output($debug = false) { 
    ... 
    } 

quindi basta scrivere il risultato di 'generatePDF()' in un file.

ad esempio:

$content = $docx->generatePDF(); 
$myfile = fopen("newfile.pdf", "w"); 
fwrite($myfile, $content); 
fclose($myfile);