使用
example from php.net我收到警告,图像无法正确呈现.我提供了.ttf文件的完整路径,如下所示:/var/www/public/myfont.ttf
PHP Warning: imagettftext() [<a href='function.imagettftext'>function.imagettftext</a>]: Could not find/open font in <PHPfile>
我使用的是自定义.ttf字体here.我可以在Ubuntu中将文件打开为有效的字体文件.我也尝试了其他字体,结果相同.
我正在使用Ubuntu 10.04 LTS 32位,安装了apache2,PHP5,freetype6和PHP5-gd.我还尝试使用ttf文件chmod 777文件和文件夹,结果相同.
*编辑:我正在使用的代码:
<?PHP // File is: /var/www/public/test.PHP // Apart from $font variable,it's copy-pasted from PHP.net // Set the content-type header('Content-Type: image/png'); // Create the image $im = imagecreatetruecolor(400,30); // Create some colors $white = imagecolorallocate($im,255,255); $grey = imagecolorallocate($im,128,128); $black = imagecolorallocate($im,0); imagefilledrectangle($im,399,29,$white); // The text to draw $text = 'Testing...'; // Replace path by your own font path $font = '/var/www/public/UnmaskedBB.ttf'; // Add some shadow to the text imagettftext($im,20,11,21,$grey,$font,$text); // Add the text imagettftext($im,10,$black,$text); // Using imagepng() results in clearer text compared with imagejpeg() imagepng($im); imagedestroy($im); ?>
[gd] GD Support enabled GD Version 2.0 FreeType Support enabled FreeType Linkage with freetype FreeType Version 2.3.11 T1Lib Support enabled GIF Read Support enabled GIF Create Support enabled JPEG Support enabled libJPEG Version 6b PNG Support enabled libPNG Version 1.2.42 WBMP Support enabled
测试is_file和is_readable:
$font = realpath('./').'/UnmaskedBB.ttf'; echo "Font: ".$font; // /var/www/public/UnmaskedBB.ttf echo "Is file? ".is_file($font); // 1 echo "Is readable? ".is_readable($font); // 1
您可以尝试插入:
putenv('GDFONTPATH=' . realpath('.'));
在第一个imagettftext前面,只是为了确保它没有路径问题.
UPDATE
如果您使用fc-cache等字体缓存,请不要忘记刷新它,例如:
sudo fc-cache -f -v
原文地址:https://www.jb51.cc/php/240244.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。