【发布时间】: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