0

我使用坐标生成了一个多边形,该坐标存储在一个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都不做。难道我做错了什么?还是不做我认为应该做的事情rotatetranslate

4

2 回答 2

0

仅作记录,您必须在绘制之前应用旋转/平移。

于 2014-07-12T16:45:15.157 回答
0

似乎翻译不是这样做的方法。

我最终在一个新ImagickDraw对象中生成了精灵,然后使用compositeImage()适当的位置将其绘制到我的主图像上。

于 2012-04-13T02:44:19.050 回答