【发布时间】:2016-05-18 01:15:20
【问题描述】:
我使用这行代码在TCPDF中添加了很多字体
TCPDF_FONTS::addTTFfont('fonts/ArchitectsDaughter.ttf', 'TrueTypeUnicode', '', 96);
$pdf->AddFont("ArchitectsDaughter");
许多其他字体都在工作,但是这个不工作。 当我在阅读器中打开这个 pdf 时,它会显示这样的错误
无法提取嵌入字体“ArchitectsDaughter”。一些字符 可能无法正确显示或打印。
我正在以 pdf 格式导入 svg 文件。
这是我在pdf中插入的SVG文件,您可以从here获取PDF,这里是font file。
这是 pdf 如何生成的完整代码。
$fileName='export';
$uploadPath = Config::get('constants.paths.uploads.images.base').'/'.$fileName.'.svg';
$pdf = new TCPDF();
TCPDF_FONTS::addTTFfont(dirname(dirname(dirname(dirname(__FILE__)))).'/vendor/font-awesome/fonts/ArchitectsDaughter.ttf', 'TrueTypeUnicode', '', 96);
TCPDF_FONTS::addTTFfont(dirname(dirname(dirname(dirname(__FILE__)))).'/vendor/font-awesome/fonts/Archivor.ttf', 'TrueTypeUnicode', '', 96);
$pdf->AddFont("Archivor");
$pdf->AddFont("ArchitectsDaughter");
$pdf->SetPrintHeader(false);
$pdf->SetPrintFooter(false);
$pdf->AddPage();
$pdf->ImageSVG($uploadPath, $x='', $y='', $w='', $h='', $link='', $align='', $palign='', $border=0, $fitonpage=true);
$filename = 'export.pdf';
$pdf->output($filename, 'D');
exit;
其他字体适合我。不知道某些字体会发生什么。 解决办法是什么?
【问题讨论】:
-
您可以在本地系统中导入和使用该字体吗?那么它是一个有效且可用的字体文件吗?您能否引用该文件的下载位置供其他人在这里进行测试?
-
@arkascha 我编辑了我的问题,你可以在那里看到 svg 和 pdf。谢谢建议
-
我询问的是字体文件,而不是任何 svg 或 pdf,因为错误消息表明字体文件已损坏。
-
@arkascha 附加字体也有问题,道歉。
-
嗯,字体文件乍一看似乎有效,而且我在打开 PDF 时也没有收到任何错误。但是,该字体不会在该文档中使用...您能否在问题中发布您的 php 代码的相关部分?那么字体文件的包含和使用呢?