dompdf扩展显示中文乱码

124 阅读1分钟

安装扩展包

composer require dompdf/dompdf

安装中文字体

下载 字体加载文件 load_font.php 文件放在vender同级目录 github.com/dompdf/util…

下载字体包

www.wfonts.com/download/da…

执行命令

`php load_font.php "SimSun" SimSun.ttf

出现结果

Unable to find italic face file.
Unable to find bold_italic face file.
Copying SimSun.ttf to D:\phpstudy_pro\WWW\gitee\webman\vendor\dompdf\dompdf/lib/fonts/SimSun.ttf...
Generating Adobe Font Metrics for D:\phpstudy_pro\WWW\gitee\webman\vendor\dompdf\dompdf/lib/fonts/SimSun...

查看vendor/dompdf/dompdf/lib/fonts文件是否字体正常载入

1.png

代码中使用(必须同时设置自定义字体+html加上字体引用)

// 创建 Options 实例并设置选项
$options = new Options();
$options->set('isRemoteEnabled', true);       // 允许远程/本地文件
$options->set('chroot', public_path());//设置一个或多个路径,作为文件访问的根目录。dompdf 在访问文件时会检查是否在chroot路径内,否则拒绝访问。这可以防止任意文件读取的安全风险。
$options->setDefaultFont('SimSun');//设置自定义字体
$dompdf = new Dompdf();
$dompdf->setOptions($options);

```
$html = '<style>
   body {
        font-family: "SimSun", serif;
        font-size: 10px;
    }
 </style>';
```