7
$content = "ÆØÅ";
$html2pdf = new HTML2PDF('P', 'A4', 'en');
$html2pdf->writeHTML($content, false)

$html2pdf->Output('', 'S'));

给我一个带有“ÆÃ〜Ô的PDF文件

我检查了 html2pdf.class.php 中的编码,它设置为 UTF-8 应该没问题。

我试图将“en”更改为“da”(丹麦语),结果仍然相同。

请问我该如何解决?现在花了几个小时寻找..

4

3 回答 3

7

您必须做两件事才能在 html2pdf 中看到奇怪的 UTF8 字符:

  1. 设置 'UTF-8' encoding,正如 Erik 已经建议的那样
  2. 使用html2pdf中唯一的UTF-8 字体:freeserif

我知道这是个老问题,但我需要几点:)

于 2015-04-30T20:12:20.233 回答
2

看起来您指定了错误的输出编码。例如,如果尝试将 UTF-8 输出显示为 ISO8859-1,则输出是典型的。

看起来 HTML2PDF 构造函数也有一个以字符编码作为参数的版本:

$html2pdf = new HTML2PDF('P','A4','da', true, 'UTF-8');

可能工作...

于 2011-09-04T19:34:12.463 回答
1

你可以使用这个 PHP 函数

utf8_decode($article_content);

如果它不起作用,唯一的解决方案是制作一个str_replace()

$content = "ÆØÅ"; 
$code_html = array("Æ","Ø","Å");
$caract_sp = array("Æ","Ø","Å");
str_replace($code_html, $caract_sp, $content);

对于任何其他特殊字符,您可以在此处查看等效的 HTML 代码:http ://www.toutimages.com/codes_caracteres.htm

于 2013-12-10T10:14:37.533 回答