Как Вы используете “глотки” на терминале для изменения размеров изображения без увелечения масштаба?

У меня есть некоторый код, который я использовал для изменения размеров изображений в Mac OS X через командную строку (и/или ртуть) к максимальной ширине или высоте 500 пкс. Единственная проблема состоит в том, что, если исходное изображение меньше, чем 500 пкс шириной или высота, глотки увеличат масштаб его. Я хотел бы, чтобы это просто пропустило эти изображения.

Как я могу заставить это произойти?

Это - мой код:

#!/bin/bash

for ARG in "$@"
    do
        sips -Z 500 -s format jpeg "$ARG" --out "${ARG%.*}.jpg"
done
5
задан 03.02.2011, 14:29

1 ответ

Обработайте вывод sips --getProperty pixelHeight filename.ext и sips --getProperty pixelWidth filename.ext и используйте его в условии, только выполняя изменить размер операцию при желании.


#!/bin/bash
height=`sips --getProperty pixelHeight url.png | sed -E "s/.*pixelHeight: ([0-9]+)/\1/g" | tail -1`
width=`sips --getProperty pixelWidth url.png | sed -E "s/.*pixelWidth: ([0-9]+)/\1/g" | tail -1`

if [[ $height -gt 500 || $width -gt 500 ]]; then
    growlnotify -m "large file needs reducing"
fi

Можно сделать остальных самостоятельно.

4
ответ дан 07.12.2019, 18:02

Теги

Похожие вопросы