Я использую GIMP для выполнения простой, но утомительной операции со многими изображениями, поэтому я хотел бы знать, как я могу создать сценарий, который сделает это за меня, или найти более простой способ сделать это.
Я импортирую файл изображения большого размера, но в основном квадратный, иногда, например, 550x564, 580x596 и т. д., Который может быть jpg, bmp или png, и я хочу экспортировать файл PNG 192x192 с измененным размером и обрезкой на обоих концах. более длинный размер, который обычно вертикальный, но может быть горизонтальным.
Я выполняю следующие шаги для изображения, которое длиннее по вертикали, чем по горизонтали:
Как я могу сделать это в script-fu или python для GIMP? Или в ImageMagick? Или есть лучший способ сделать для этого макрос?
Думаю, я тебя понял. Попробуйте это с помощью ImageMagick, чтобы преобразовать одно изображение:
convert input.jpg -gravity center -resize 192x192^ -extent 192x192 -set filename:base "%[basename]" "%[filename:base].png"
Вы также можете потенциально использовать возможности mogrify
для создания всего каталога, полного изображений за один раз, но будьте очень осторожны и попробуйте его на КОПИИ ваших файлов где-нибудь вдали от вашей основной работы. На самом деле это будет проще, потому что вы можете позволить mogrify
самому определять имена файлов, и вам не нужен цикл:
# Process all JPEGs in current directory
mogrify -format png -gravity center -resize 192x192^ -extent 192x192 *jpg
Если вы работаете в Windows, вам может потребоваться избежать каретки (^
), я не использую Windows, но я думаю, вам нужно будет либо добавить перед ней дополнительную вставку, либо, возможно, заключить весь параметр -resize
в двойные кавычки:
mogrify ... -resize "192x192^" ...
Обратите внимание, что если вы используете ImageMagick v7 +, mogrify ...
становится magick mogrify ...
Решил ли мой ответ вашу проблему? Если да, то примите его как свой ответ, щелкнув пустую галочку / галочку рядом с подсчетом голосов. Если нет, скажите, что не сработало, чтобы я или кто-то еще мог вам помочь. Спасибо. meta.stackexchange.com/questions/5234/…