在AppleScript中使用特定的x,y坐标裁剪图像

时间:2019-02-11 03:16:05

标签: applescript

我可以使用顶部-底部填充和左侧-右侧填充进行裁剪,但是如何使用AppleScript裁剪图像中的特定感兴趣区域,例如,如果原始图像的总尺寸为1000 * 1000,我想要{200,150,600,600}

中的区域

1 个答案:

答案 0 :(得分:1)

我认为无法通过图像事件sips “可编写脚本的图像处理系统” 从图像中裁剪出任意部分。

如果有人知道不同的地方,请ping我,我很乐意接受纠正。


如果您不想在Mac上安装任何软件,则可以使用安装了 GD 的小型PHP脚本来实现所需的图像处理。看起来像这样:

#!/usr/bin/php -f

<?php
   $im = imagecreatefromjpeg("image.jpg");
   $crop_area = array('x'=>200,'y'=> 100,'width'=>600,'height'=>600);
   $result = imagecrop($im, $crop_area);
   imagejpeg($result,"result.jpg");
?>

当然,您可以将其放在脚本中,例如"cropper.php"并通过 Applescript 通过以下方式调用:

do shell script cropper.php

,您还可以接受参数,以便您可以传入图像名称,裁剪几何图形和输出文件名。


另一个选择可能是安装 ImageMagick ,您可以通过运行以下命令来使用自制软件

brew install imagemagick

然后您可以像这样使用 ImageMagick

magick input.jpg -crop 600x600+200+150 result.jpg

您可以使用以下方法从 Applescript 进行调用:

do shell script "magick ..."

与上面的PHP版本相同。