我正在使用R& OS PDF类(http://www.ros.co.nz/pdf)在PHP中创建PDF文件,试图在输出中添加更多字体。它需要一个TTF文件和一个AFM文件作为指标,但我无法解决这篇文章中提到的“bad / BBox”错误:Generating .afm from .ttf
起初我以为我没有使用正确制作的ttf文件,但我尝试转换一些我知道合法的字体(Arial)并且我仍然得到错误,所以现在我认为它必须是AFM转换。
上面的Stack帖子引用http://fpdf.fruit-lab.de/作为一个很好的转换工具 - 也许我只是使用了错误的映射? PDF是否有特定的地图格式?
答案 0 :(得分:3)
我使用dompdf http://code.google.com/p/dompdf/遇到了同样的问题,它使用R& OS PDF Class进行渲染,所以这可能对你有帮助。
如果您有.ttf字体,请跳至第2步。
我遇到空格问题,所以我使用CamelCase,我的.ttf扩展名为大写,而我的.afm扩展名为小写。一旦我确定我在CamelCase中命名的.afm和.ttf没有空格和小写扩展它就可以了!
这可能是dompdf特定的,然后我不得不更新dompdf_font_family_cache.dist.php并在数组中包含我的字体,如下所示:
'testscript' => array (
'normal' => DOMPDF_FONT_DIR . 'TestScript',
'bold' => DOMPDF_FONT_DIR . 'TestScript',
'italic' => DOMPDF_FONT_DIR . 'TestScript',
'bold_italic' => DOMPDF_FONT_DIR . 'TestScript',
)
注意:我只想要一个版本的字体 - 不是粗体,斜体等所以我只是让它们都指向同一个字体文件。