Оптимизация изображений при помощи JPEGoptim и OptiPNG

2 комментария
linux-logo

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

Если вы собираетесь применить данный способ на Ваших личных фотографиях, то знайте что будет удалена информация о дате, месте съемки.

Каким образом достигается уменьшение размера? Как я уже выше сказал это будет достигаться путем удаления комментариев и всевозможной дополнительной информации (Exif, IPTC, ICC, XMP).

Устанавливаем JPEGoptim

sudo apt-get install jpegoptim

JPEGoptim будем использовать со следующими ключами:

  • --strip-all удаляет комментарии, Exif, IPTC, ICC, XMP
  • --all-progressive преобразует в прогрессивный jpeg
  • -p сохранит время создания такими же как у исходного файла
  • -t покажет итоговый результат оптимизации для нескольких изображений
  • -m90 устанавливает максимальное сжатие jpeg в 90. Этот параметр влияет на качество изображения!

JPG файлы будем оптимизировать и преобразовывать в прогрессивный вид при помощи JPEGoptim. Прогрессивный jpeg, это когда при загрузке сначала появляется размытый контур изображения и по мере загрузки обретается четкость. Jpg в прогрессивном режиме позволяет получить представление обо всём изображении уже после передачи незначительной части JPEG-файла. В обычном режиме jpeg загружается последовательно, с верху в низ.

В итоге для оптимизации jpeg файлов в текущей папке надо запустить

jpegoptim --strip-all --all-progressive -Pptm90 *.jpg

Для рекурсивного (во всех вложенных подкаталогах) преобразования запускаем

find -type f -iname "*.jpg" -exec jpegoptim --strip-all --all-progressive -Ppm90 {} \;

Для запуска на сервере от имени www-data и c сохранением прав доступа наберем команду:

sudo -u www-data find -type f -iname "*.jpg" -exec jpegoptim --strip-all --all-progressive -Ppm90 {} \; -exec chmod 644 {} \;

OptiPNG уменьшает размер файла путем удаления ненужных для изображения функций таких как на примем полноцветность для черно-белых изображений.

Устанавливаем OptiPNG

sudo apt install optipng

PPA с последней версией OptiPNG

sudo apt-add-repository ppa:optipng/stable
sudo apt-get update
sudo apt-get upgrade

OptiPNG будем использовать с ключами:

  • -strip all удалит всю «лишнюю» информацию из файла
  • -o4 указывает степень сжатия, от 1 до 7. По умолчанию 2.

Так же, по умолчанию OptiPNG преобразует входные файлы с чередованием строк (interlaced). Это похоже на прогрессивный jpg, когда изначально загружаются контуры изображения и по мере загрузки появляется четкость. Это позволяет на начальном этапе загрузки получить представление о загружаемом изображении. В обычном режиме изображения загружается сверху в низ. Эту опцию можно отключить, используя ключ -i0-i1 включает преобразование в interlaced (по умолчанию).

За подробностями man optipng

Для рекурсивной оптимизации запускаем

find -type f -iname "*.png" -exec optipng -strip all -o4 {} \;

Итоговые команды для рекурсивной оптимизации изображений на сервере от имени пользователя www-data

Для JPG

sudo -u www-data find -type f -iname "*.jpg" -exec jpegoptim --strip-all --all-progressive -Ppm90 {} \; -exec chmod 644 {} \;

Для PNG

sudo -u www-data find -type f -iname "*.png" -exec optipng -strip all -o4 {} \;

Если есть вопросы, то пишем в комментариях.

Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо!!!

RSS

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Русифицируем Ubuntu Server 16.04/18.04/20.04 LTS
linux-logo

Сегодня в статье настроим и русифицируем Ubuntu Server 16.04/18.04/20.04. Чтобы поддерживался русский язык, и перевод системы стал русским

Вносим CAA запись в DNS (bind9)
dns_bind9

Начиная с сентября 2017 года удостоверяющим центрам предписано обязательно проверять CAA-записи в DNS перед генерацией сертификата. CAA (RFC-6844, Certificate Authority Читать

Обновления Ubuntu Server 16.04 до 18.04
linux-logo

В этой статье рассмотрим пример обновления Ubuntu Server 16.04 до Ubuntu Server 18.04 Все наши действия нам придется выполнять из Читать

Защита OpenVPN с помощью Fail2Ban
fail2ban-logo

В связи с последними блокировками IP-адресов Роскомнадзором, встала необходимость завести свой собственный VPN сервер. Если VPN у вас ещё не Читать

5 2 голоса
Рейтинг статьи

Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

2 комментариев
новее
старее большинство голосов
Inline Feedbacks
Просмотреть все комментарии
Вячеслав
Вячеслав
16.05.2021 10:16

Спасибо за статью! Есть ли возможность с этими инструментами автоматически оптимизировать загружаемые новые изображения на вордпрессе?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: