我有一个在前端获取rotateY(-54deg)的图像,我需要使用Imagick::distortImage在PHP上以相同的方式旋转它

$image->distortImage(Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);


是否有简单的方法将-54deg转换为$controlPoints所需的distortImage()

最佳答案

我认为没有任何(简便)的方法可以做到这一点。

Imagick::DISTORTION_PERSPECTIVE用于使用perspective projection扭曲图像,这需要8个预先计算的系数。

imagemagick docs


  您可以通过查看a的-verbose输出来获得这些系数
  “透视”失真,或者自己计算。如果最后
  两个透视图缩放系数均为零,其余6个
  表示转置的“仿射矩阵”。


我认为-54deg本身没有足够的数据来解密这8个系数。您将不得不采取这种艰难的方式,对不起:)

10-08 07:50