我使用坐标生成了一个多边形,该坐标存储在ImagickDraw
对象中。我想旋转对象的几个副本,然后在不同的位置将它们绘制到我的图像上。
我使用的是imagick 3.1.0rc1和ImageMagick 6.7.6-5。
以下是我正在使用的内容:
$sprite = new ImagickDraw();
$sprite->polygon($coords) //array of coordinates
$sprite->rotate(-90); //Doesn't seem to rotate
$sprite->translate($x, $y); //Doesn't seem to translate
$im->drawImage($sprite);
问题在于,出于某种原因,rotate
和translate
什么也没做。难道我做错了什么?或者rotate
和translate
没有做我认为它应该做的事情?
答案 0 :(得分:0)
看起来像翻译不是这样做的。
我最终在一个新的ImagickDraw
对象中生成了精灵,然后使用compositeImage()
将其绘制到我的主图像上的适当位置。
答案 1 :(得分:0)
只是为了记录,您必须在执行绘图之前应用旋转/翻译 。