我正在努力将HTML转换为MS字。我使用phpWord,一切正常,但我找不到如何设置方向rtl。它会忽略带有方向的HTML样式标记。
我的代码有效:
$word = 'C:\wamp\www\myproject\vendor\autoload.php';
require_once($word);
if (isset($_POST['file_name'])) {
$file_name = $_POST['file_name'];
$file_content = $_POST['file_content'];
$file_content = str_replace('<br>','<br/>', $file_content);
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
\PhpOffice\PhpWord\Shared\Html::addHtml($section, $file_content, false, false);
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('document.docx');
}
文本的rtl应该像这样添加:
$fontStyle = new \PhpOffice\PhpWord\Style\Font();
$fontStyle->setRTL(true);
$fontStyle->setLang('he-IL');
但是我找不到如何为addHTML设置它
由于
XXXXXXXXXXXXXXXXXXXXXXXXXX 我编辑了addHTML函数,在$ element之后添加了带样式的数组
self :: parseNode($ node-&gt; item(0),$ element,array('font'=&gt; array('size'=&gt; 24,'rtl'=&gt; true,'lang' =&GT; '他-IL')));
现在我看到当我打印phpWord时rtl设置为1,但是
创建文档时,字体大小为24,文本不是rtl