我需要使用像
这样的html2pdf以pdf格式编写表格文本<div><span> - English Translation 1 : </span><span> : Arabic Translation 1</span></div>
<div><span> - English Translation 2: </span><span> : Arabic Translation 2</span></div>
<div><span> - English Translation 3: </span><span> : Arabic Translation 3</span></div>
我从https://github.com/iafan/html2pdf/blob/master/_tcpdf_5.9.206/examples/example_018.php得到了一个例子,但这似乎适用于页面页面。
到目前为止我做了以下代码。
$finder = new Zend_Dom_Query($htmlContent);
$classname = "intl-text";
$nodes = $finder->query("*[class~=\"$classname\"]");
foreach($nodes as $node) {
foreach($features as $feature) {
$engText = $feature->getEnglishText();
$arbText = $feature->getArabicText();
$div = $dom->createElement("div");
$span = $dom->createElement("span");
$span->nodeValue = "- ".$engText;
$div->appendChild($span);
$span = $dom->createElement("span");
$span->setAttribute("style", "direction: rtl;");
//$span->setAttribute("dir", "rtl");
$span->nodeValue = ": ".$arbText;
$div->appendChild($span);
//$div->nodeValue = "- ".$engText.": ".$arbText;
$node->appendChild($div);
}
}
$content = $nodes->getDocument()->saveHTML();
$html2pdf->writeHTML($content, false);
$html2pdf->Output(__DIR__.'Output.pdf', 'F');
答案 0 :(得分:1)
经过更多搜索后,我会通过以下更改来解决问题。
$span->setAttribute("style", "direction: rtl;display: inline-block;font-family:dejavusanscondensed;");
css中的字体系列完成了这个技巧,文本现在以pdf格式显示在阿拉伯语中。但是它没有正确对齐。但我怀疑这可能需要一些html修复。
来自:Indian currency symbol not show when convert html2pdf in php。