【问题标题】:Html entity decode issue using html2pdf使用 html2pdf 的 Html 实体解码问题
【发布时间】:2016-04-25 09:25:19
【问题描述】:

我正在尝试在 PDF 文档中正确显示从数据库中获取的文本字符串。我想不通的是以下内容。

我使用 fpdf 和 html2pdf 来生成 PDF 文档。从我的数据库中获取我的信息后,我使用:

iconv('UTF-8', 'windows-1252', $data);

如果我使用,这会在 PDF 文档中正确显示:

$pdf->Cell();

但是当我使用时:

$pdf->WriteHtmlCell();

它似乎有解码问题。它似乎在另一个字符集中,因为 ù 变成 ù 和 Ä 变成 Ä 等等。我试图将其转换为 UTF-8(它最初是在其中)或 ISO,但我一直得到相同的结果。当我运行

mb_detect_encoding();

在字符串上它总是以 ASCII(即 UTF-8?)返回。

WriteHtmlCell(); 是否使用其他编码?

【问题讨论】:

  • 好吧,你可以看到检测编码部分是正确的:它解码为 UTF8 c3 b9,或者作为拉丁 1 编码中的 2 个字符 A tilde + superscript 1。您的新 HTML 文件是否声明它以 UTF8 编码?
  • @RadLexus 是的,页面的字符集元是:。我认为它与 fpdf 的 html2pdf 扩展有关。还是我弄错了?
  • 有人知道我在哪里可以找到解决方案吗?我在输出之前尝试了编码,但那不起作用。
  • 如果您 edit 您的帖子并添加您尝试过的内容以及为什么它不起作用,它会有所帮助。编辑您的帖子还会使其回到首页,因此可能会吸引更多浏览量。

标签: php pdf utf-8 fpdf html2pdf


【解决方案1】:

试试这个

html_entity_decode($your_data, ENT_XHTML,"ISO-8859-1");

【讨论】:

  • 谢谢!我在写入 PDF 之前更改了我的内容并且它可以工作: $content = html_entity_decode($content, ENT_XHTML,"utf-8");
猜你喜欢
  • 2010-11-15
  • 2011-07-29
  • 1970-01-01
  • 2012-05-26
  • 2020-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多