Dompdf unicode字符(仅在服务器上)

问题描述 投票:0回答:1

我使用dompdf将我的html页面渲染为pdf。我在php中准备了模板,并使用下面的代码。它在localhost上工作正常,但是当我在服务器上传它时失败(显示问号而不是unicode字符)。 FontAwesome也无法显示图标。

generator.php

<?php
session_start();
ob_start();
//dompdf
require_once('../../dompdf/autoload.inc.php');
use Dompdf\Dompdf;
require_once('../pdf-template/template.php');
$template=ob_get_clean();
$dompdf=new Dompdf();
$dompdf->loadHtml($template);

//paper
$dompdf->setPaper('A4','portrait');

// render
$dompdf->render();
$pdf_content = $dompdf->output();
file_put_contents('test.pdf',$pdf_content);
echo "successful";
?>

的template.php

<i class="fa fa-paw"></i>
<h2 style="font-family: DejaVu Sans; font-size: 22px">ığĞüÜşŞİöÖçÇ</h2>
php dompdf
1个回答
0
投票

我解决了这个问题。这是关于dompdf_font_family_cache.dist.php。在localhost上触发后,它会根据我的计算机更改文件夹。所以字体在服务器上不会改变。要解决,应该删除dompdf / lib / fonts文件夹中的php文件,并且应该上传从Github / DOMPDF获得的干净的“dompdf_font_family_cache.dist.php”。

© www.soinside.com 2019 - 2024. All rights reserved.