DOMPDF不支持阿拉伯字符

时间:2014-08-07 20:20:18

标签: php

任何人都可以帮助我,

我使用的是DOMPDF并且它运行良好,但不是阿拉伯字符。它显示了这些(???)

我尝试过使用:      <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> 在头标记中,还有:     <style type="text/css">        html,body{         font-family: 'tahoma' ;     }     </style>

但它没有用。请在这件事上给予我帮助 在此先感谢:)

4 个答案:

答案 0 :(得分:2)

在html中使用以下样式

<style> 
 * { font-family: DejaVu Sans, sans-serif; }
</style>

答案 1 :(得分:1)

dompdf/dompdf_config.inc.php

def("DOMPDF_DEFAULT_FONT", "sarif");

替换: -

def("DOMPDF_DEFAULT_FONT", "dejavu sans");

答案 2 :(得分:0)

请参阅开启DOMPDF的unicode支持的快速指南:https://code.google.com/p/dompdf/wiki/CPDFUnicode

  

要使DOMPDF正确处理您的字符,您必须在配置中启用Unicode支持。编辑dompdf_config.inc.php或dompdf_config.custom.inc.php,以便DOMPDF_UNICODE_ENABLED为true。如果不启用此设置,则在插入PDF时,文本将重新编码为Windows ANSI,并且任何超出此编码范围的字符都将转换为问号。

答案 3 :(得分:0)

为了向dompdf添加字体,您无需执行wiki中所述的所有步骤。我遇到了同样的问题,我所做的就是下载字体.ttf文件,然后将以下css添加到我的html中:

@font-face {
    font-family: Arial;
    src: url(template/fonts/Arial Regular.ttf);
}
body {
    background: #FFF;
    font-family: Arial;
}

由于我们已经在我们的风格中添加了font-face,dompdf将获取ttf文件并显示字体。


另一种方法是将.ttf和.afm字体文件(例如:arial-regular.ttf,arial-regular.afm)上传到&#34; lib / fonts /&#34;然后更新名为&#34; dompdf_font_family_cache.dist.php&#34;的文件。 in&#34; lib / fonts /&#34;通过添加以下代码:

'arial' => 
  array (
    'normal' => DOMPDF_FONT_DIR . 'arial-regular',
    'bold' => DOMPDF_FONT_DIR . 'arial-regular',
    'italic' => DOMPDF_FONT_DIR . 'arial-regular',
    'bold_italic' => DOMPDF_FONT_DIR . 'arial-regular',
  ),

这样当您在html页面上使用arial字体时,它会自动加载arial-regular.ttf&amp; arial-regular.afm并正确显示字体。


如果您有.ttf文件而不是.afm文件,则可以使用此在线工具将.ttf转换为.afm http://everythingfonts.com/ttf-to-afm