使用Imagick和PHP重心进行中心裁剪

ryn*_*nop 11 php imagick

我希望使用Imagick PHP apis(不是Imagick的命令行版本)来裁剪裁剪和图像.

基本上我想通过命令行做可能的事情,使用API​​.以下是命令行的示例:http: //www.imagemagick.org/Usage/crop/#crop_gravity

这是我正在做的事情(不工作).它总是裁剪源的左上角:

        $this->imagickObj->setGravity(\Imagick::GRAVITY_CENTER);
        $this->imagickObj->cropImage(300,250,0,0);
        $this->imagickObj->setImagePage(0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

为什么setGravity在裁剪之前不适用于图像?http://www.php.net/manual/en/function.imagick-setgravity.php说应该应用于对象(在这种情况下是单个图像)...

Kap*_*rma 14

对于提出问题的原始人来说为时已晚,但对于未来的访问者来说,正确的解决方案是

bool Imagick :: cropThumbnailImage(int $ width,int $ height)

很抱歉迟到的回复,但我也在30分钟之前就被困在这里,第一次google结果将我重定向到这里.希望与其他人不会发生同样的事情.

  • 这总是使作物居中吗?如果我想改变重力怎么办? (2认同)

ryn*_*nop 4

看起来没有支持,这就是我最终的做法: https://gist.github.com/1364489