Вопрос Как изменить размер изображения через терминал? [Дубликат]


На этот вопрос уже есть ответ:

У меня Ubuntu 10.04. Я преобразовал изображение через терминал, используя следующую команду:

convert myfigure.png myfigure.jpg

Но я хочу изменить размер и ширину преобразованного изображения. Есть какой-либо способ сделать это?


123
2018-03-24 02:20


происхождения




ответы:


Такая же команда с дополнительной опцией:

convert myfigure.png -resize 200x100 myfigure.jpg

или

convert -resize 50% myfigure.png myfigure.jpg

Чтобы изменить размер нескольких файлов, вы можете попробовать следующую команду (как предложено @ test30)

find . -maxdepth 1 -iname "*.jpg" | xargs -L1 -I{} convert -resize 30% "{}" _resized/"{}"

157
2018-03-24 04:49



Вы также можете использовать процент, как в convert -resize 50% myfigure.png myfigure.jpg - January
@January отлично :) - Rinzwind
Если я хочу преобразовать все изображения в папку, то какая из них лучшая команда? делает convert -resize 50% *.JPG Работа? Тпх - Ehsan M. Kermani
измените размер всех изображений в текущем каталоге на 50% find -maxdepth 1 . -iname "*.jpg" | xargs -l -i convert -resize 50% {} /tmp/{}   ЦСИ: perturb.org/display/632_ImageMagick_resize_images.html   я добавил maxdepth :) - test30
Найдено, что делать все фотографии. должен быть до -maxdepth, так что это должно быть: find. -maxdepth 1 -iname "* .JPG" | xargs -l -i convert -resize 25% {} email / {} - Andrew Stern


Если вы хотите только CLI:

sudo apt-get install imagemagick
mogrify -resize 320x240 Image.png 
mogrify -resize 50% Image.png
mogrify -resize 320x240 *.jpg

Если вы хотите попробовать GUI:

устанавливать nautilus-image-converter

sudo apt-get install nautilus-image-converter

Он добавляет два пункта контекстного меню в nautlius, чтобы вы могли щелкнуть правой кнопкой мыши и выбрать «Изменить размер изображения» (другое - «Повернуть изображение»).

Вы можете сделать целый каталог изображений за один раз, если хотите, и вам даже не нужно открывать приложение для этого.


38
2018-03-11 10:46



Есть ли более подходящее ПО для CLI, чем это? Он падает и работает примерно на 80% изображений. - Luka


Поскольку Ubuntu поставляется с Python, вы также можете использовать скрипт Python для достижения этого с меньшим контролем над тем, что происходит - см. этот stackoverflow вопрос, например, сценарии. В этих примерах используется только стандартная библиотека.

Сценарий №1

import os, sys
import Image

size = 128, 128

for infile in sys.argv[1:]:
    outfile = os.path.splitext(infile)[0] + ".thumbnail"
    if infile != outfile:
        try:
            im = Image.open(infile)
            im.thumbnail(size, Image.ANTIALIAS)
            im.save(outfile, "JPEG")
        except IOError:
            print "cannot create thumbnail for '%s'" % infile

И еще один пример, где вам нужно указать ширину (как переменную ширины):

Сценарий №2

from PIL import Image
import sys

filename = sys.argv[1:]
basewidth = 300
img = Image.open(filename)
wpercent = (basewidth/float(img.size[0]))
hsize = int((float(img.size[1])*float(wpercent)))
img = img.resize((basewidth,hsize), Image.ANTIALIAS)
img.save(filename) 

Теперь, как это сделать через терминал ...

sudo nano resizescript.py

Вставьте один из этих блоков кода в текстовый редактор. Ctrl + x для выхода (скажем да, чтобы сохранить изменения).

Чтобы использовать скрипт # 1:

python resizescript.py yourfilenamehere.jpg

Чтобы использовать Script # 2:

python resizescript.py yourfilenamehere.jpg

Вы должны находиться в том же каталоге, что и файлы изображений для обоих этих сценариев. Первый сжимает изображение до 128x128 пикселей. Второй скрипт составляет 300 пикселей в ширину и вычисляет пропорциональную высоту. Это больше ответ на Python, но это делается через терминал технически.


2
2017-09-10 20:08



пожалуйста, укажите пример (ы) здесь - Zanna
Пожалуйста, укажите пример через терминал в соответствии с вопросом. - kenorb
Спасибо, я принял слишком много в моем первом ответе. Я внес изменения в вопрос. - freeworld
Обратите внимание, что PIL доступен только для Python 2; поддержка 3.x запланирована «позже» в соответствии с pythonware.com/products/pil - arp


imgp это относительно новая утилита, которая изменяет размер и вращение изображения. Он имеет больше возможностей, чем nautilus-image-converter.


0
2017-10-05 05:00



Хотя это теоретически может ответить на вопрос, было бы предпочтительнеечтобы включить здесь основные части ответа и предоставить ссылку для справки. - Kevin Bowen