Php FPDF中的汉字问题

Php FPDF中的汉字问题,php,pdf,unicode,pdf-generation,fpdf,Php,Pdf,Unicode,Pdf Generation,Fpdf,我正在使用FPDF库生成一些订单确认,这非常有效。但现在我需要一些中文字符在文件中。到现在为止,我已经找了好几个小时,没有找到可行的解决办法。是否可能使用FPDF支持汉字,或者是否有支持FPDF的替代方案 所有字符都与常规文本混合并存储在MySQL数据库中。PDF文档仅在打印汉字时显示unicode。存在类似或的中文编码格式。但是,您尝试输入的文本很可能是Unicode。存在提供Unicode支持的。我将测试打印以下传统汉字:中國. 这意味着中国,对于那些不懂阅读的人来说 // Rememb

我正在使用FPDF库生成一些订单确认,这非常有效。但现在我需要一些中文字符在文件中。到现在为止,我已经找了好几个小时,没有找到可行的解决办法。是否可能使用FPDF支持汉字,或者是否有支持FPDF的替代方案


所有字符都与常规文本混合并存储在MySQL数据库中。PDF文档仅在打印汉字时显示unicode。

存在类似或的中文编码格式。但是,您尝试输入的文本很可能是Unicode。存在提供Unicode支持的。我将测试打印以下传统汉字:中國. 这意味着中国,对于那些不懂阅读的人来说

//  Remember to copy msjh.ttf to [path to tFPDF]/font/unifont/ directory

//  Initialize tFPDF
require('tfpdf.php');
$pdf = new tFPDF();
$pdf->AddPage();

//  Add a Unicode font like MSJH
$pdf->AddFont('MSJH','','msjh.ttf',true);
$pdf->SetFont('MSJH','',42);

//  Output Chinese string to PDF
$pdf->Text(12,42,"中國");

//  Output PDF document
$pdf->Output();

另一种选择是Code200365k TTF

$pdf->AddFont('Code200365k','','Code200365k.ttf',true);
我将其用于汉字,如下所示:

if (preg_match("/[\x{4e00}-\x{9fa5}]+/u", $my_value)){
    $pdf->SetFont('Code200365k','',12);
}
$pdf->Cell(130,9,$my_value,1,1,'L');
$pdf->SetFont('Arial','',11);

你签了吗?@MariM但输入编码是正确的?穆罕默德·阿卜杜勒·拉希姆的答案基本上是正确的。不过,我在这里提供了一个更详细的解决方案,其中我描述了可用的中文字体和完整的Unicode替代品,以及谷歌Noto字体等,请看我在这里的回答:对于像我一样困惑的人:微软在这里免费下载MSJH字体:它似乎是为Windows XP用户设计的;如果您在尝试运行下载的文件(它是一个.exe!)时出错,您只需使用7Zip左右的文件即可解压。