如何更改使用PHP Imagick的newPseudoImage函数绘制的标题的颜色?

时间:2011-10-25 14:39:52

标签: php imagemagick imagick

我正在使用Imagick::newPseudoImage功能创建带有标题的图像,如下所示:

$txt = new Imagick();
$txt->setFont("templates/fonts/Gloria.ttf");
$txt->setGravity(imagick::GRAVITY_CENTER);
$txt->newPseudoImage( $image_width, $image_height, "caption:" . $text );

这会画一个黑色标题。我想自定义这个标题的颜色。我知道还有其他使用Imagick绘制文本的方法。我需要使用带有标题的newPseudoImage而不是其他方法,因为它会自动换行并调整文本大小以适合给定的矩形。

2 个答案:

答案 0 :(得分:2)

colorizeImage 有问题会使文字稍微暗一点,因为它与黑色混合有趣。请改用 clutImage

killall -s INT /ve/path/bin/uwsgi

答案 1 :(得分:1)

您可以使用 colorizeImage 。我希望这可以帮到你:

$im = new Imagick();
$background = new ImagickPixel('none');

$im->setBackgroundColor($background);
$im->setFont("somefont.ttf");
$im->setpointsize(72);

$im->setGravity(Imagick::GRAVITY_CENTER);
$im->newPseudoImage(300, 300, "caption:" . "Put your text" );
$im->colorizeImage('#0000b0',1.0);
$im->setImageFormat("png");

header( "Content-Type: image/png" );
echo $im;