PHP mPDF:无法在 PDF 中显示意第绪语

PHP mPDF: Failed to display Yiddish Language in PDF

我在 codeigniter 项目中使用 mPDF。它适用于英语和俄语,但在意第绪语中它只显示点 (.) 和逗号 (,),如下所示:

mPDF output

而我写的内容是:

Yiddish Content

这是我的代码:

    $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 不在标准分布中,您也没有 configured an additional font.

删除 SetFont 调用并使用

$mpdf->autoLangToFont = true;

连同 lang="yi"lang="he"divspan 中围绕您的 hebrew/yiddish 文本。

您还可以在 autofont mPDF example file.

中找到示例代码

如果您使用 $mpdf = new \Mpdf\Mpdf();

简单的解决方法是在下面添加:

$mpdf->autoScriptToLang = true; 
$mpdf->autoLangToFont = true; 

就这些了