这个问题被问了一遍又一遍,但我找不到我的问题的正确答案......作为一个小背景说明,在我们将类文件从 /application/lib/class 移动到 /library 之前,所有代码都运行良好/班级 ...
我曾尝试使用 GDFONTPATH、相对路径、绝对路径(有和没有文件扩展名)都无济于事。以下是我们迄今为止尝试过的一些线路:
putenv('GDFONTPATH=' . realpath(dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'fonts'));
/*1*/ $FontName = dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'fonts'.DIRECTORY_SEPARATOR.basename($FontName,'.ttf');
/*2*/ $FontName = '\pChart\fonts\\'.basename($FontName);
/*3*/ $FontName =basename($FontName);
$coords = imagettfbbox($FontSize, 0, $FontName, $Text);
这些尝试的多次组合也被用来无济于事。作为#1,我真的很恼火这个问题,当echo'ed 给出一个完整路径时,如果在win explorer 中复制/粘贴,它会打开正确的字体文件。
了解获取错误的文件的绝对路径和字体名称的路径可能会有所帮助...
C:\wamp\www\application_bundle\Library\pChart\class\pImage.class.php
C:\wamp\www\application_bundle\Library\pChart\fonts\arialuni.ttf
我们在所有开发平台(Win、Mac 和 Linux)PHP 5.3.13 上都遇到了这个问题
谢谢您的帮助。
编辑:似乎找不到文件/服务器没有查看正确的文件夹......如果有人可以通过指出如何找出 GD 试图打开的路径来帮助解决问题,那真的很有帮助。