TCPDF - 嵌入式ttf字体当PDF在iPad上观看不显示(TCPDF - embedded

2019-08-17 09:24发布

我创建了一个网站,以动态创建PDF的使用TCPDF并嵌入字体到PDF。 用户可以从一个范围的标准字体如Arial的选择,宋体等。然后该系统直接从我的服务器选择一个TTF字体和使用下面的代码嵌入。 使用该字体的文字可以看出大多数PDF浏览器不错,但iPad/iPhone's浏览器不显示它。 我下载ARIAL.TTF的一个新的(随机)版本作为测试(不知道在文件中的差异,但现在看来,以显示效果细腻。

我需要为大量的字体做到这一点,但在黑暗中的一点我拍,因为我不知道是什么的字体可能会导致其无法被嵌入。 有谁知道在TTF字体什么会导致其无法被显示? 显示精细的其他观众和节目被嵌入在Acrobat文档属性?

谢谢

$fontname = $pdf->addTTFfont('/tcpdf/fonts/custom/'.$ttfFile.'.ttf', 'TrueTypeUnicode', '', 32);

//使用的字体

$pdf->SetFont($fontname, '', $fontPoints, '', 'false');

Answer 1:

您的$子集参数是错误的。 将其设置为“假”(带引号)。 它应该是逻辑真。

    <?php
          ...
          // Wrong
          $pdf->SetFont($fontname, '', $fontPoints, '', 'false');

          // Right
          $pdf->SetFont($fontname, '', $fontPoints, '', true); 
          ...
    ?>

为什么它的工作?

因为它嵌入了整个字体,不仅是一个子集。 关键是要设置方法$ PDF - >并入setfont()为true的参数$子集。

http://www.tcpdf.org/doc/code/classTCPDF.html#a471562985997be1573d387f0aeae6964

PDF正在与

iPad的(IOS 7),iPhone(IOS 7),Windows 7中,MACOSX 10.9。

我的PDF创建环境

上MAC 10.9的Apache 2,PHP 5.3.x,则应TCPDF v6.0.078

例如PDF和PHP脚本来创建它



文章来源: TCPDF - embedded ttf fonts not showing when PDF is viewed on iPad