php - PHP mPDF:无法在 PDF 中显示意第绪语
问题描述
我在 codeigniter 项目中使用 mPDF。它适用于英语和俄语,但在意第绪语中它只显示点 (.) 和逗号 (,),如下所示:
虽然我写的内容是:
这是我的代码:
$mpdf = new \Mpdf\Mpdf();
$mpdf->SetFont('avenirnext');
$mpdf->SetTitle($title);
$mpdf->SetAuthor('Blavatnik');
$mpdf->WriteHTML($stylesheet, 1);
$mpdf->WriteHTML($stylesheet2, 1);
$mpdf->WriteHTML($stylesheet3, 1);
$mpdf->setAutoTopMargin = 'stretch';
$mpdf->SetHtmlHeader($header, 'OE');
$mpdf->SetHTMLFooter($footer, 'OE');
$mpdf->WriteHTML($html);
if ($html2 != '' && $html3 != '') {
$mpdf->SetHtmlHeader($secondHeader, 'OE');
$mpdf->WriteHTML($html2);
$mpdf->SetHtmlHeader($header, 'OE');
$mpdf->WriteHTML($html3);
}
if ($transcriptHtml2 != '' && $transcriptHtml3 != '') {
$mpdf->WriteHTML($transcriptHtml2);
$mpdf->WriteHTML($transcriptHtml3);
}
$mpdf->Output($title . '.pdf', 'I');
我也尝试过使用以下解决方案:
$mpdf = new mPDF('utf-8');
$mpdf->SetDirectionality('rtl');
还有什么我可以更改它以使其适用于所有语言或主要是这种意第绪语。谢谢!
解决方案
您必须使用支持希伯来字符的字体。此外,avenirnext
不在标准发行版中,您还没有配置额外的字体。
删除SetFont
呼叫并使用
$mpdf->autoLangToFont = true;
与您的希伯来语/意第绪语文本一起lang="yi"
或lang="he"
在 adiv
或 a中。span
您还可以在自动字体 mPDF 示例文件中找到示例代码。
推荐阅读
- sql - 显示两列,但其中一列与 SQL Server 中另一个表中的另一列联合
- decidable - 具有有限状态的给定 TM 是否可判定?
- python - 在 Python 中打印倒金字塔
- java - 当对象足够大时,如何告诉杰克逊序列化程序停止继续序列化和写入
- mongodb - 如何使用 mongoDB 中的聚合为数组中的每个元素添加求和字段
- python - Python ThreadPoolExecutor:没有按预期工作?
- flutter - 单引号中的flutter_html图像src标签
- generics - 从 num 扩展的泛型类型和从 int 到 double 类型转换的问题
- postgresql - JackRabbit OAK:在 postgresql 中生成空闲 DB 事务
- scala - Scala 编译器抛出:java.lang.IllegalAccessError: Class 'scala.tools.nsc.transform.patmat.PatternExpansion$ExtractorAlignment'