Инструмент изменения размера изображения для Ubuntu

Ответы:

14

Пожалуйста, попробуйте использовать ImageMagick . Сначала установите его:

$ sudo apt-get install imagemagick

Затем вы можете сделать небольшой скрипт bash, чтобы конвертировать их в ваши 6 размеров:

#!/bin/bash

# List all the formats you wish to have
SIZES="640x480 800x600 1024x768"

# pass directory as first argument to the script
# Use '.' (current directory) if no argument was passed
DIR=${1:-.}

find $DIR -type f | while read file; do
   for size in $SIZES; do
      # Resize and rename DSC01258.JPG into DSC01258_640x480.JPG, etc.
      # Remove the ! after $size if you do not wish to force the format
      convert -resize "${size}!" "$file" "${file%.*}_${size}.${file##*.}"
   done
done

Сохраните скрипт как, например convert.sh, и запустите:

chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default

Редактировать: я отредактировал скрипт, чтобы не изменять файлы при изменении размера, а переименовывать их, например, в DSC01258_640x480.JPG, и использовать преобразование вместо того, mogrifyчтобы файлы фактически переименовывались. Я также немного продезинфицировал переменные, не повредит.

Я протестировал скрипт с png файлами, и он работал нормально. Он должен работать для всех видов форматов изображений, поддерживаемых ImageMagick:

$ file wave_bible_bot/*
  wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced

$ ./resize.sh wave_bible_bot/

$ file wave_bible_bot/*
  wave_bible_bot/wave_bible_bot1_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1.png:          PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2.png:          PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3.png:          PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
ℝaphink
источник
10

Если вы устанавливаете ImageMagick, как упомянул Сатья, есть хороший интерфейс с графическим интерфейсом, который упрощает изменение размера nautilus-image-converter.

Чтобы установить это:

sudo apt-get install nautilus-image-converter

Перезапустите nautilus (или выйдите и вернитесь). Это добавит «Изменить размер изображения» и «Повернуть изображения» в контекстное меню, как показано здесь:

альтернативный текст

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

альтернативный текст

Используйте опцию «Добавить» и добавьте собственное имя к вашим измененным изображениям. Возможно, вы захотите добавить размер, например 1024x768, ИЛИ вы можете сделать 6 копий ваших изображений в разных папках, а затем использовать опцию изменения размера изображений по месту на изображениях в каждой папке, чтобы перезаписать их новыми изображениями, имеющими разные размеры. Изменение размера изображений на месте будет всегда перезаписывать выбранные изображения, поэтому будьте осторожны, что вы выбираете!

Джон Т
источник
6

Вы можете использовать ImageMagick: сначала установите ImageMagick

sudo apt-get install imagemagick

Затем перейдите к месту, где находятся ваши изображения:

cd /path/to/where/images/are/stored

Затем создайте каталоги в соответствии с вашим размером

mkdir /path/to/where/images/are/stored/size

Скопируйте изображения в каталог, куда вы хотите преобразовать

cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size

Затем измените каталог на другой каталог

cp /path/to/where/images/are/stored/size

Затем используйте инструмент под названием mogrifyиз библиотеки ImageMagick для изменения размера

mogrify -resize 640×480! *.jpg

Это изменит все размеры 640*480, !скажет соотношение сторон.

Я не знаю скриптов Bash, так что это не так автоматизировано.

Сатьяджит Бхат
источник
2

Там действительно должно быть несколько ссылок на mogrifyинструмент в convert«s руководство. ... Я искал около сорока пяти минут, но только когда наткнулся на другой пост, я смог начать смотреть в правильном направлении.

В интересах других эта линия сделала именно то, что мне нужно. Потребовалось около пятидесяти от двух до трех килограмм JPG (в том же каталоге) и сбросило их все до 80-120 килобайт. И, конечно, все их имена остались «совершенно» одинаковыми.

mogrify *.jpg -quality 75 -resize "640x480>" *

И снова для пользы других:

  • *.jpg ... выполняет команду mogrify для всех файлов JPG в каталоге.

  • -quality 75 ... снижает качество JPG до 75%, что достаточно для просмотра онлайн.

  • -resize "640x480>" ... приводит к изменению размера всех изображений до 640x480 (обратите внимание на ">" в конце. Это делает изображения меньшими, но не большими. ... и не забывайте кавычки; это важно.

  • * ... и не забывайте об этом в самом конце команды.

tg3793
источник
1

Я бы порекомендовал phatch. Его графический интерфейс гораздо более гибкий, чем у imagemagick и nautilus, и также имеет интерфейс командной строки, если вам нужно написать скрипт. Вы можете установить его с

sudo apt-get install phatch
Ким
источник
0

Я создал простой в использовании инструмент: изменение размера изображения . Он использует imagemagick за сценой. После установки он создаст значок на вашем рабочем столе Linux. Вы можете перетащить одно или несколько изображений или папку изображений на него, и он создаст копию каждого изображения с измененным размером. Нужный размер можно легко изменить, щелкнув правой кнопкой мыши значок на рабочем столе.

Tabish
источник
0

Если вы ищете графический интерфейс, а не инструмент командной строки, взгляните на BIR: https://github.com/agronick/BIR

введите описание изображения здесь

Виктор Ламойн
источник