Используя Smush.it или встроенный оптимизатор изображений Firebug, я понимаю, что мы можем уменьшить размер файла всех наших веб-jpg. На самом деле довольно много. Поскольку у нас есть сотни тысяч изображений, есть ли способ пакетной оптимизации (и замены) этих изображений с помощью любого известного вам инструмента (кроме вышеупомянутого, поскольку они работают только одно за другим)? На самом деле не хочу делать это вручную один за другим. :(
Я бы порекомендовал утилиты ImageMagick от http://www.imagemagick.org/script/index.php
Вы можете использовать convert
утилита от ImageMagick вместе с некоторыми простыми сценариями командной строки. Вы можете использовать систему Unix или Cygwin в Windows
Точная команда преобразования будет convert -quality 50 in.jpg out.jpg
. Установите желаемое значение параметра качества. (Примечание: это операция с потерями)
Утилита convert также может конвертировать в другие форматы, такие как PNG, без потерь.
Если у вас Unix или bash на Cygwin, полная операция будет следующей:
for file in *.jpg; do
filebase=`basename $file`
convert $file -quality 50 ${filebase}.new.jpg
done
Другой вариант - использовать GIMP в пакетном режиме:
Нужный вам инструмент называется jpegtran. Он доступен в большинстве дистрибутивов Linux, а также доступен двоичный файл Windows. Вы хотите использовать следующую команду:
jpegtran -copy none -progressive -outfile out_filename.jpg in_filename.jpg
Вы легко сможете записать это с помощью командного файла или сценария оболочки для запуска во всех ваших файлах изображений. Обратите внимание, что при этом могут быть удалены уведомления об авторских правах и тому подобное. Если это проблема, измените -copy none
к -copy comments
.