给图片上写文字常见的需求,php使用 Imagick结合ImagickDraw变可轻松实现
简单例子:
$canvas = new Imagick();
$canvas->newImage(500, 200, 'white');
$canvas->setImageFormat('png');
$draw = new ImagickDraw();
$draw->setFillColor(new ImagickPixel('#f00'));
$draw->setFontSize(50);
$draw->annotation(100, 60, 'welcome');
$canvas->drawImage($draw);
$draw->setFillColor(new ImagickPixel('#fff'));
$draw->setFontSize(50);
$draw->annotation(100, 120, 'welcome');
$canvas->drawImage($draw);
header("Content-type: image/{$canvas->getImageFormat()}");
echo $canvas->getImageBlob();
运行后效果: