我正在使用PHP库PHPOffice和PHPWord将docx文件转换为pdf。我使用TCPDF作为PDF编写器。
我的代码如下
include_once 'Sample_Header.php';
include_once '../vendor/tecnickcom/tcpdf/tcpdf.php';
\PhpOffice\PhpWord\Settings::setPdfRendererPath('../vendor/tecnickcom/tcpdf');
\PhpOffice\PhpWord\Settings::setPdfRendererName('TCPDF');
$temp = \PhpOffice\PhpWord\IOFactory::load('files/sampledocument.docx');
$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($temp , 'PDF');
$xmlWriter->save('results/sampledocument.pdf', TRUE);
只有当docx文件包含没有任何样式更改的纯文本(即颜色,文本粗体)时,它才能正常工作并生成正确的pdf文件。但是,如果包含样式的docx文件在pdf中从新行开始。
例如docx文件包含
Hello World
这在pdf文件中显示正确。但是如果docx文件包含如下(" H"和" W"这里是粗体)
**H**ello **W**orld
以pdf显示如下(而不是在一行中显示多行显示)
H
ello
W
orld
请让我知道任何人都有解决方案。提前致谢。