imagettftext不起作用

时间:2014-11-04 10:03:53

标签: php gd freetype imagettftext

我使用imagettftext()尝试此代码:

// Set the content-type
header('Content-Type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = 'arial.ttf';

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);

但它不能正常工作,我安装了GD和FreeType,你可以看到: enter image description here

任何人都可以指出我正确的方向吗?

3 个答案:

答案 0 :(得分:0)

将变量$ font指定给字体文件的绝对路径。

答案 1 :(得分:0)

// Replace path by your own font path
$font = 'arial.ttf';

您的代码正在寻找不存在的“arial.ttf”。请将字体文件(arial.ttf)复制到代码的同一目录中。

答案 2 :(得分:0)

尝试替换字体路径

$font = 'arial.ttf';

$font = __DIR__ .'\Arial.ttf';

或使用绝对路径(它不正确但有效),如果您使用的是 windows 系统

$font = 'c:\WINDOWS\Fonts\Arial.ttf';