使用PHP和Urdu文本生成PDF

问题描述

Mpdf库声称它可以处理UTF-8字符,但是无论我尝试什么都不起作用,即使Mpdf手册中给出的示例也会产生错误

require_once  '../vendor/autoload.PHP';

$mpdf = new \Mpdf\Mpdf(['allow_charset_conversion' => true]);

$html = '

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
 <Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>Document in Lithuanian</title>
</head>
<body>

... اسلام و علیکم  ...
لفظوں کا مجموعہ
</body>
</html>';



$mpdf->WriteHTML($html);
$mpdf->Output();

解决方法

添加mpdf库后使用此功能

 private function generate_pdf($html,$title){
    error_reporting(0);
    $this->load->library('Mpdf');
    $mpdf = new Mpdf('ar','A4','',32,25,27,16,13);
    $mpdf->SetFont("Jameel Noori Nastaleeq");
    $mpdf->setTitle($title);
      // $mpdf->SetDirectionality('ltr');
    $mpdf->mirrorMargins = true;
    $mpdf->SetDisplayMode('fullpage');
    $mpdf->WriteHTML($html);
    $mpdf->Output();
  }