Php ImageMagick裁剪图像的非方形区域

Php ImageMagick裁剪图像的非方形区域,php,imagemagick,imagick,Php,Imagemagick,Imagick,我在iMagick中的裁剪工具有问题 现在我的代码是这样的 $image->cropImage($width,$height,$x,$y) 因此,被裁剪的对象不可避免地将是正方形。但是如果我想设置4个不同的点,得到非正方形的物体呢 如您所见,目前我仅使用$x和$y设置即将裁剪图像的左上角。我还可以设置其他3个吗?您需要制作一个“面具”,我不知道如何在Imagick中实现这一点。您可能会在这里找到答案:您必须从四个点计算宽度和高度,并将其用于cropImage()@fmw42,但如果我需要梯形而不

我在iMagick中的裁剪工具有问题

现在我的代码是这样的

$image->cropImage($width,$height,$x,$y)

因此,被裁剪的对象不可避免地将是正方形。但是如果我想设置4个不同的点,得到非正方形的物体呢


如您所见,目前我仅使用
$x
$y
设置即将裁剪图像的左上角。我还可以设置其他3个吗?

您需要制作一个“面具”,我不知道如何在Imagick中实现这一点。您可能会在这里找到答案:您必须从四个点计算宽度和高度,并将其用于cropImage()@fmw42,但如果我需要梯形而不是矩形,该怎么办?除了矩形之外,您不能裁剪任何其他形状。对于其他情况,您只能裁剪边框并使外部区域透明。您可以通过在黑色背景上绘制白色填充多边形来制作遮罩。然后将遮罩放入图像的alpha通道。对不起,我只知道命令行。但请参见在(使用所有4个角点)处绘制“多边形x1,y1…xn,yn”,然后转换-compose copy_opacity-composite将遮罩放入alpha通道。请参阅并使用imagick::COMPOSITE_COPYOPACITY