IMG OPTIMIZATION GUIDE

Внимание! Данные утилиты оптимизируют изображения, но если оригинальный размер картинки отличается от того который отображаеться на сайте google pagespeed insights будет требовать дополнительно уменьшения размера этих картинок, что обычно не входит в задание "Исправление ошибок"!

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

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

sudo apt-get install jpegoptim

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

  • --strip-all удаляет комментарии, Exif, IPTC, ICC, XMP
  • --all-progressive преобразует в прогрессивный jpeg
  • -p сохранит время создания такими же как у исходного файла
  • -t покажет итоговый результат оптимизации для нескольких изображений
  • -pm85 устанавливает максимальное сжатие jpeg в 85. Этот параметр влияет на качество изображения!JPG файлы будем оптимизировать и преобразовывать в прогрессивный вид при помощи JPEGoptim. Прогрессивный jpeg, это когда при загрузке сначала появляется размытый контур изображения и по мере загрузки обретается четкость. Jpg в прогрессивном режиме позволяет получить представление обо всём изображении уже после передачи незначительной части JPEG-файла. В обычном режиме jpeg загружается последовательно, с верху в низ.

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

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

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

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

Обратите внимание права на файлы могут быть изменены на чтение и запись только для владельца файла (-rw-------). Для решения этой проблемы добавим -exec chmod 644 "{}" что будет менять права на -rw-r--r--. В более новых версиях этой проблемы нет и добавлен новый ключ -P который сохраняет права такими же как у исходного файла.

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

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

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

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

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

sudo apt-get install optipng

Устанавливаем 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 "{}"

Примечание

Google PageSpeed в своих рекомендациях ужимает картинки до 72 ppi, для этого нужно добавлять ключ -pm85

Подписаться Подписаться Подписаться