【发布时间】:2012-06-26 09:58:56
【问题描述】:
我在使用 PHP 生成 PDF 格式的报告时遇到问题。我尝试过 FPDF、TCPDF 和 HTML2PDF 库,但它们不支持所有 Unicode 字符集。
TCPPDF 支持捷克语 (cz)、丹麦语 (da)、德语 (de)、西班牙语 (es) 等。但我需要同时输出英语和孟加拉语文本。但是孟加拉语字符正在替换为?s。
是否有支持所有 Unicode 字符集的 PHP 库?如何使用 FPDF、TCPDF 或 HTML2PDF 输出孟加拉语字符集?
【问题讨论】:
-
TCPPDF 支持 unicode, utf-8,请问您使用有什么问题,您按照他们的说明操作了吗?
-
您的问题很可能与字体有关,而不是字符集。您缺少一种字体,这就是它无法呈现的原因。找到您喜欢的字体,将其添加到库可以找到的位置,然后重试。
-
感谢@Preveen Kumar 和 Burhan Khalid。当我通过link生成相应的字体.php和.z文件时根据fpdf指令..然后出现错误“错误:字体许可证不允许嵌入”。
-
@arif04cuet - 听起来您的字体许可证不允许嵌入,这对于读者机器上可能没有的非标准字体是必需的。购买具有嵌入许可证的相同字体,或使用您知道允许这样做的不同字体(购买字体时,请始终与卖家确认)。甚至可以为您需要的语言提供免费的 TTF 字体。
-
我终于找到了一个免费的 TTF 并生成了相应的 .php 和 .z 文件并将它们存储在字体目录中。我已经实现了如下所示的字体 $pdf = new PDF(); $pdf->AddFont('Nikosh', '', 'Nikosh.php'); $pdf->SetFont('Nikosh', '', 35);但不希望输出“আরিফ of the East 2011”