【问题标题】:TCPDF Pyidoungsu(unicode) font order errorTCPDF Pyidoungsu(unicode)字体顺序错误
【发布时间】:2021-04-26 20:00:52
【问题描述】:

我使用这种方式添加字体并打印 pdf,但字体顺序未更正。 在pdf.php中

require_once('tcpdf_include.php');

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);

$pdf->AddPage('P', 'A7');
$fontname = TCPDF_FONTS::addTTFfont('../fonts/Pyidaungsu-2.5.1_Regular.ttf', 'TrueTypeUnicode', '', 32);
$pdf->SetFont($fontname, '', 14, true);

我写的字体顺序正确,但是

$block1 = <<<EOF

<table style="font-size:9px; text-align:center">

    <tr>
        
        <td style="width:160px;">
    
            <div>
            
                Date: $saledate

                
                <p style="font-size:10px">Aung Kyaw Oo(တောင်းဖျာနှီးကုန်)</p>
                
                

            </div>

        </td>

    </tr>


</table>

EOF;

$pdf->writeHTML($block1, false, false, false, false, '');

我使用了 utf_8general_ci 中的数据库

pdf တောင်းဖျာနှီးကုန် as "တ‌ောင်းဖျာနှီးကုန်" 中缅甸字体(Pyidoungsu unicode 字体)的字体顺序错误

【问题讨论】:

  • 请将您的代码作为文本,而不是图像
  • @WBM,对不起,这是我的第一次。我编辑了我的问题

标签: php unicode tcpdf


【解决方案1】:

我们使用 Zawgyi 字体解决了这个问题。

由于 TCPDF 在缅甸 Unicode 字体中存在渲染问题,但在 Zawgyi 字体中没问题。所以我们使用 zawgyi 字体,并使用 Rabbit Converter 将我们原始的 Unicode 内容转换为 Zawgyi。

您可以看到完整的源代码,这是我们的公共存储库。 https://github.com/aungkoman/pdf_generate/

require("Rabbit.php");
function uni2zg($str){
    return Rabbit::uni2zg($str);
}

$pdf->SetFont($font_family = 'zawgyi', $variant = '', $fontsize = 11);
$pdf->Text(0, 0, uni2zg("သီဟိုဠ်မှ ဉာဏ်ကြီးရှင်သည် အာယုဝဍ္ဎနဆေးညွှန်းစာကို ဇလွန်ဈေးဘေး ဗာဒံပင်ထက် အဓိဋ္ဌာန်လျက် ဂဃနဏဖတ်ခဲ့သည်။"));

【讨论】:

    猜你喜欢
    • 2014-07-16
    • 2017-12-22
    • 2022-12-11
    • 1970-01-01
    • 2015-04-09
    • 1970-01-01
    • 2013-06-22
    • 1970-01-01
    • 2011-03-25
    相关资源
    最近更新 更多