PHP:GD库:增加ImageString函数的字体大小

时间:2009-06-24 07:04:26

标签: php gd

我有以下代码块,它将输出验证码图像

 $im = @imagecreatefromjpeg("captcha.jpg"); 
 $rand = _generateRandom(3);
 $_SESSION['captcha'] = $rand;
 ImageString($im, 5, 2, 2, $rand[0]." ".$rand[1]." ".$rand[2]." ", ImageColorAllocate ($im, 23, 85, 160));

现在我想增加字体大小。我使用第二个参数为5。我知道我们只能使用1到5个。但我想增加\ font大小更多。我也想将字体更改为其他类似Arial或Verdana。如何做到这一点?提前致谢

3 个答案:

答案 0 :(得分:6)

听起来你最好不要使用imagettftext

array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )

答案 1 :(得分:2)

另一个快速选项是在html代码中增加图像的大小。因此,如果您的captcha.php文件呈现50px宽的图像,请将其显示为100px宽。这不是理想的,但它是一个快速修复。

<img src="captcha.php" width="100">

答案 2 :(得分:1)

使用imagettftext()功能。

$im = @imagecreatefromjpeg("captcha.jpg"); 
 $rand = _generateRandom(3);
 $_SESSION['captcha'] = $rand;
 ImageString($im, $size, 0, 2, 2, ImageColorAllocate ($im, 23, 85, 160), $fontfile, $rand[0]." ".$rand[1]." ".$rand[2]." ");

其中$size是字体大小,$fontfile是包含TTF字体的文件。有关更多用法信息,请参阅PHP手册条目(上面链接)。