Загрузка страницы..
Оптимизация изображений с помощью jpegoptim и optipng (Google Page Speed)
Google Page Speed предлагает несколько инструментов для сжатия изображений без потерь jpegtran или jpegoptim, OptiPNG или PNGOUT.
2017-03-05T19:03 05 марта 2017 19:03
Просмотров: 2914

Google Page Speed предлагает несколько инструментов для сжатия изображений без потерь для JPEG и PNG файлов (без влияния на качество изображения).

Оптимизаторы JPEG jpegtran и jpegoptim дают практически одинаковый результат, так что выбор того или иного остаётся за пользователем.

Главным недостатком jpegtran, как по мне, является необходимость указывать имена файла источника и файла приёмника, т.е. нельзя сразу же переписать оптимизированное изображение в тот же файл, что неудобно для большого количества файлов и нужно писать какую-то обёртку для вызова этого оптимизатора.

Поэтому в этом плане jpegoptim является предпочтительнее.

Оптимизация JPEG инструментом jpegoptim

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

  • --strip-all удаляет комментарии, Exif, IPTC, ICC, XMP
  • --all-progressive преобразует в прогрессивный jpeg
  • -p сохранит время создания такими же как у исходного файла
  • -t покажет итоговый результат оптимизации для нескольких изображений
  • -m85 устанавливает максимальное сжатие jpeg в 85. Этот параметр влияет на качество изображения!
  1. Установка (пример для CentOS)
    rpm -Uhv path-to-jpegoptim-file
  2. Поиск файлов и оптимизация
    find -name *.jpg -exec jpegoptim --strip-all '{}' \;

    Выполняет поиск всех *.jpg файлов и оптимизирует их (файлы переписываются). Поиск происходит в текущей директории (для изменения используйте ключи утилиты find).

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

    -m85 устанавливает максимальное сжатие jpeg в 85. Этот параметр влияет на качество изображения!

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

Оптимизация PNG инструментом OptiPNG

Для оптимизации PNG используем OptiPNG – свободную программу для уменьшения размера файлов в формате Portable Network Graphics путём их сжатия различными методами с игнорированием ненужных для данного изображения функций PNG, таких как полноцветность для чёрно‐белого изображения.

  1. Установка
    • CentOS 5.x /Red Hat 5.x / Fedora

      yum install wget
      dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
      rpm -ivh epel-release-5-4.noarch.rpm
      yum install optipng
    • CentOS 6.x and Red Hat 6.x

      yum install wget
      wget dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
      rpm -ivh epel-release-5-4.noarch.rpm
      yum install optipng
    • Fedora

      yum install optipng
    • Ubuntu/Debian/Linux Mint

      sudo apt-get update
      sudo apt-get install optipng
    • Windows

      С сайта http://optipng.sourceforge.net/ скачать архив, распаковать и запустить optipng.exe

  2. Поиск файлов и оптимизация
    find -name *.png -exec optipng -o3 '{}' \;

    Всё аналогично. Здесь указывается ключ –oX, где о – сокр. от optimixation, X – уровень сжатия (1-7). На практике не стоит выставлять максимальный уровень сжатия, так как это приводит к значительному увеличению времени обработки и затрате ресурсов (обычно достаточно 3).

После оптимизации изображений показатель Page Speed может значительно увеличиться.



Комментарии: 0

Коментарий пока нет, стань первым!

Добавить комментарий

Читайте так же:

web - программированиеSQLBashUbuntu
13 марта 2017 16:03
581
Яндекс.Метрика Яндекс.Метрик