PDF aus .docx generieren, generiert mit PHPWord

Ich erstelle.docx Dateien aus einer Vorlage mitPHPWord. Es funktioniert gut, aber jetzt möchte ich die generierte Datei in @ konvertierPDF.

Zunächst habe ich versucht, mittcpdf in Kombination mitPHPWord

$wordPdf = \PhpOffice\PhpWord\IOFactory::load($filename.".docx");

\PhpOffice\PhpWord\Settings::setPdfRendererPath(dirname(__FILE__)."/../../Office/tcpdf");
\PhpOffice\PhpWord\Settings::setPdfRendererName('TCPDF');

$pdfWriter = \PhpOffice\PhpWord\IOFactory::createWriter($wordPdf , 'PDF');
if (file_exists($filename.".pdf")) unlink($filename.".pdf");
$pdfWriter->save($filename.".pdf");  

Aber wenn ich versuche, die Datei zu laden, um sie in @ zu konvertierPDF Ich erhalte die folgende Ausnahme beim Laden der Datei

Schwerwiegender Fehler: Unaufgefangene Ausnahme 'BadMethodCallException' mit der Meldung 'PreserveText kann nicht in Abschnitt hinzugefügt werden.'

Nach einigen Recherchen habe ich festgestellt, dass einige andere auch diesen Fehler haben phpWord - PreserveText kann nicht in Abschnitt @ hinzugefügt werd)

BEARBEITE

Nach ein paar weiteren Versuchen fand ich heraus, dass dasException tritt nur auf, wenn ich ein @ hamail merge fields in meinem Dokument. Nachdem ich sie entfernt hatte, wurde dasException wird nicht mehr angezeigt, aber das konvertiertePDF Dateien sehen schrecklich aus. Alle Stilinformationen sind weg und ich kann das Ergebnis nicht verwenden, so dass die Notwendigkeit einer Alternative besteht.



Ich habe überlegt, das PDF auf andere Weise zu generieren, aber ich habe nur vier Möglichkeiten gefunden:

Using OpenOffice - Unmöglich, da ich keine Software auf dem Server installieren kann. Auch geht der Weg erwähntHie hat auch nicht als mein Hoster funktioniert Strato) verwendet SunOS als Betriebssystem und benötigt LinuxUsing phpdocx - Ich muss kein Budget dafür bezahlen und die Demo kann kein PDF erstellenUsing PHPLiveDocx - Dies funktioniert, ist jedoch auf 250 Dokumente pro Tag und 20 Dokumente pro Stunde beschränkt, und ich muss ungefähr 300 Dokumente gleichzeitig konvertieren, möglicherweise sogar mehrmals pro Tag.Using PHP-Digital-Format-Convert - Die Ausgabe sieht besser aus als mitPHPWord undtcpdf, aber immer noch nicht verwendbar, da Bilder fehlen und die meisten (nicht alle!) Stile

Gibt es einen fünften Weg, um das PDF zu generieren? Oder gibt es eine Lösung, um die generierten PDF-Dokumente schön aussehen zu lassen?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage