Подтвердить что ты не робот

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

Я ищу лучший инструмент для сжатия изображений (png и jpeg) через командную строку.
После googling я нашел trimage, который хорош, так как он сжимает как png, так и jepeg, но степень сжатия в этом случае очень плохая.

Я наткнулся на онлайн-инструмент jpeg-optimizer.com, который делает работу лучше, чем тримаг. Может ли кто-нибудь помочь найти правильный инструмент для этого.

4b9b3361

Ответ 1

Я использую следующие инструменты для сжатия без потерь:

Для каждой из программ я создал две быстрых клавиши:

  • Тот, который выполняет фактическое сжатие, и показывает размер файла обоих файлов.
  • Тот, который заменяет исходный файл сжатым (если я доволен, я сделаю стрелку вверх, префикс моей предыдущей команды с "m" и нажмите клавишу ввода).

Я положил это в свой .bashrc:

# Image optimization tools
png() {
    pngcrush -brute "$1"{,.} && du -b "$1"{,.}
}
gif() {
    gifsicle -O "$1" -o "$1." && du -b "$1"{,.}
}
jpeg() {
    jpegtran "$1" > "$1." && du -b "$1"{,.}
}
# Just for easy access in history
mpng() {
    mv "$1"{.,}
}
mgif() {
    newsize=$(wc -c <"$1.")
    oldsize=$(wc -c <"$1")
    if [ $oldsize -gt $newsize ] ; then
        mv "$1"{.,}
    else
        rm "$1."
    fi  
}
mjpeg() {
    mv "$1"{.,}
}

Примечание: pngcrush -brute очень многословно. Перенесите вывод на /dev/null, если вас не интересует прогресс.

Ответ 3

Если вы работаете в Linux, попробуйте mogrify инструмент imagemagick suite

Это очень удобно в командной строке.

Пример:

mogrify -resize 50% rose.jpg

mogrify -format jpg *.png