Dompdf不在PDF中呈现INR符号

时间:2018-03-21 07:25:55

标签: php dompdf html-to-pdf

我在尝试使用INR货币符号时遇到了 dompdf 的问题。我已设法使用本地服务器上的Dejavu Sans font family解决此问题。但是,当我将文件上传到实时服务器时,它只会生成?来代替INR symbol。我尝试了很多方法,例如提供@fontface{...}代码,define("DOMPDF_UNICODE_ENABLED",true),使用'Currencies'字体系列,但它不起作用。

require_once 'class-my-pdf-creator.php';
$dompdf = new my_pdf_obj();
define("DOMPDF_UNICODE_ENABLED", true);
$dompdf->set_option('isHtml5ParserEnabled', true);
$dompdf->loadHtml('<style>@font-face {
  font-family: "DejaVu Sans";
  font-style: normal;
  font-weight: normal;
}</style><span style="font-family: DejaVu Sans; sans-serif;">&#8377;</span>');
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
$dompdf->set_option('font_subsetting', true);
// Render the HTML as PDF
$dompdf->render();
$dompdf->stream();

1 个答案:

答案 0 :(得分:0)

Dompdf 0.6.x及更高版本支持不同的编码。

显示INR的最简单方法是在UTF-8中对文档进行编码。然后你可以参考INR符号。

在HTML中添加以下语句:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

将以上内容添加到HTML后,您可以使用以下代码显示INR符号:

<span style="font-family: DejaVu Sans; sans-serif;">&#8377;</span>