Как управлять изображениями в терминале Linux

Вы когда-нибудь устали постоянно открывать свой любимый редактор изображений для простого кадрирования, изменения размера или изменения формата файла? Может быть, вам нужно легко выполнять эти задачи в пакетном режиме или в программном обеспечении?

Вот как использовать инструмент преобразования Linux, который позволяет вам делать все это с помощью терминала через командную строку и многое другое.

Установить ImageMagick

Инструмент convert является частью популярного пакета imagemagick , который вам необходимо установить. Проверьте, установлен ли ImageMagick, с помощью команды:

 convert --version

Если отображается номер версии ImageMagick, значит, он уже установлен, и вы можете перейти к следующему разделу. В противном случае установите ImageMagick с помощью команды:

 sudo apt-get -y install imagemagick

Получить информацию об изображении

Вы можете получить основную информацию о любом изображении с помощью команды:

 convert <FILENAME> -print "Type: %m
Size: %b
Dimensions: %wx%h
" /dev/null

Это даст вам тип mime изображения, размер файла в КБ и его размеры в пикселях, и будет выглядеть примерно так:

 Type: jpeg
Size: 35.6KB
Dimensions: 640 x 480

Изменить формат файла изображения

Вы можете легко изменить формат файла любого изображения с помощью:

 convert <SOURCE_FILE> -append <DEST_FILE>

Эта команда возьмет файл <SOURCE_FILE>, преобразует его в правильный формат и сохранит новое изображение в <DEST_FILE>. Вы должны использовать правильные расширения файлов (например, JPG, GIF, PNG и т. Д.) Для DEST_FILE, и он будет автоматически определяет, в какой формат конвертировать изображение.

Изменить размер изображения в Linux

Если вы хотите изменить размер изображения или, возможно, быстро создать миниатюру, вы можете сделать это с помощью параметра -resize . Выполните следующую команду:

 convert -resize 25% <SOURCE_FILE> <DEST_FILE>

Это изменит размер изображения и создаст новый файл изображения в DEST_FILE, который составляет 25% от размеров исходного изображения. Обратите внимание, что указанная выше команда не уменьшает размер на 25%, а вместо этого создает новое изображение размером 25%. Если вам нужно увеличить изображение, вы можете установить процентное значение больше 100%.

Вместо изменения размера в процентах вы также можете указать конкретные размеры с помощью команды:

 convert -resize 1024x768 profile.jpg profile_large2.jpg

Приведенная выше команда изменит размер исходного изображения до 1024×768 пикселей и сохранит новое изображение в DEST_FILE.

Обрезать изображение

Если вам нужно немного снять верх или боковые стороны, вы можете обрезать изображение с помощью следующей команды:

 convert <SOURCE_FILE> -crop 640x250+0+0 <DEST_FILE>

Например, если исходное изображение было 640×480 пикселей, приведенная выше команда приведет к тому, что DEST_FILE будет изображением 640×250 пикселей, содержащим верхнюю половину изображения, а нижняя половина будет обрезана. + 0 + 0 в приведенной выше команде указывает крайнюю левую верхнюю точку изображения или, другими словами, где начать обрезку.

Используя приведенный выше пример, вы можете сохранить нижнюю половину изображения с помощью команды:

 convert <SOURCE_FILE> -crop 640x250+0+230 <DEST_FILE>

Обрезка начнется с 0x230 в исходном изображении, обрезана верхняя половина и останется только нижняя половина.

Повернуть изображение

Вы даже можете вращать изображения с помощью команды:

 convert <SOURCE_FILE> -rotate 90 <DEST_FILE>

Вышеупомянутая команда повернет исходное изображение на 90 градусов по часовой стрелке и сохранит полученное изображение в DEST_FILE.

Добавить подпись к изображению

Еще одна отличная особенность инструмента преобразования – это возможность мгновенно добавлять подписи к изображениям, в том числе, где на изображении разместить подпись, а также использовать семейство шрифтов, размер и цвет. Используйте следующую команду, чтобы добавить подпись к изображению:

 convert profile.jpg -pointsize 14 -font helvetica -fill yellow -draw 'text 270,160 "Warm Regards from the Family" ' profile_cap.jpg

Вышеупомянутая команда поместит заголовок «Теплый привет от семьи» на исходное изображение, используя шрифт Helvetica 14pt желтого цвета, с левой верхней точкой изображения, начинающейся с 270×160 пикселей, и сохранит результаты в DEST_FILE.

Обратите внимание, вы должны быть осторожны с параметром -draw , который должен начинаться с одинарных кавычек, за которым следует местоположение самой верхней левой точки, а затем текст подписи, окруженный двойными кавычками.

Доступен огромный список цветов , и при желании вы можете перечислить все цвета, поддерживаемые вашим компьютером, с помощью команды:

 cb:>showrgb

Выбор шрифтов зависит от вашего компьютера , но все стандартные шрифты, которые обычно используются, будут там. Каждая операционная система немного отличается, но, например, в Ubuntu шрифты расположены в каталоге / usr / share / fonts и содержат список всех доступных системных шрифтов, которые вы можете использовать в приведенной выше команде.

Команды редактирования изображений Mix and Match

Вы можете комбинировать и объединять любые из вышеперечисленных параметров в одну команду для большей эффективности. Например, если у вас есть большое изображение с неправильной ориентацией, размером 2571 x 1200 пикселей, и вы хотите создать эскиз размером 300 x 200, вы можете использовать команду:

 convert <SOURCE_FILE> -rotate 90 -crop 1200x800 -resize 25% <DEST_FILE>

Вышеупомянутое сначала поворачивает изображение на 90 градусов, делая новый размер 1200×2571 пикселей. Затем он обрезает излишки снизу, чтобы его высота составляла всего 800 пикселей, и, наконец, изменяет размер изображения до 25% от его исходного размера, в результате чего конечный эскиз имеет размер 300×200 пикселей.

Пакетная обработка каталога изображений

У вас есть целый каталог изображений, которые вы хотите обработать одной командой? В Linux это не проблема. Например, вы можете создать эскизы всех изображений в текущем рабочем каталоге, изменив их размер до 30% от текущего:

 mkdir thumbs
for i in `ls | grep .jpg$`; do convert $i -resize 30% thumbs/$i; done

Приведенная выше команда просмотрит все файлы в вашем текущем каталоге с расширением .jpg, изменит их размер до 30% от их размера и поместит полученные эскизы в подкаталог / thumbs / .

Манипулирование изображениями стало проще!

Надеемся, что с помощью этого руководства вы лишили возможности безболезненно и без усилий манипулировать изображениями через терминал и легко пакетно обрабатывать весь каталог с помощью одной команды.

Вы узнали, что такое инструмент преобразования ImageMagick, а также как с легкостью изменить формат файла, изменить размер, обрезать, повернуть и добавить подписи к изображениям. Также доступно множество дополнительных функций – попробуйте параметр convert -help для получения полного списка.