Обрезать изображение с помощью определенной координаты X, Y в AppleScript - PullRequest
0 голосов
/ 11 февраля 2019

Мне удалось обрезать, используя верхний - нижний и левый - правый отступы, но как мы можем обрезать определенную область интереса из изображения, используя AppleScript, например, если общий размер исходного изображения равен 1000* 1000, и я хочу область от {200, 150, 600, 600}

1 Ответ

0 голосов
/ 11 февраля 2019

Я не верю, что можно вырезать произвольную часть изображения с помощью событий изображения или sips «Система обработки изображений с помощью сценариев» .

Если кто-то знает что-то другое, пожалуйста, пингуйте меня, и я рад, что исправлюсь.


Если вы не хотите устанавливать какое-либо программное обеспечение на свой Mac, вы можете добиться желаемого с помощью небольшогоPHP-скрипт в комплекте с GD , установленным для обработки изображения.Это будет выглядеть примерно так:

#!/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 выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...