使用Imagick裁剪除了底部10%的图像以外的所有图像

时间:2017-03-09 15:15:25

标签: php imagick

我正在阅读8.5 x 11“PDF并创建jpg缩略图。

我想裁剪除了近10%的图像。 (基本上只想在决赛中使用页脚)

$pdf_file   = $file;
$save_to = 'bottom.jpg';
$img = new imagick();
$img->setResolution(300,300);
$img->readImage("{$pdf_file}[0]");
$img->scaleImage(800,0);
$img->setImageFormat('jpg');
$img = $img->flattenImages();
$img->cropImage(0,0,0,350);
$img->writeImages($save_to, false);

echo '<img src="bottom.jpg">';

上面代码的输出产生一个显示页脚的jpg,但是图像是800px W X 685px H,页脚顶部有空白区域。

我只想要800px W X的页脚大约200px H.

1 个答案:

答案 0 :(得分:1)

我不确定为什么你将3次传递给裁剪功能。参数应该是:

  • width - 裁剪的宽度
  • height - 作物的高度
  • x - 裁剪区域左上角的X坐标
  • y - 裁剪区域左上角的Y坐标

所以这应该做你想要的:

$img->cropImage(
    $image->getImageWidth(),
    350, 
    0,
    $image->getImageHeight() - 350
);