Оптимизация размера файла JPG - PHP, ImageMagick, & Google's Page Speed

У меня есть код фотогалереи, который действительно отображает создание миниатюры и изменение размеров. Я использую ImageMagick, чтобы сделать это. Я работал, галерея пролистывают инструмент Page Speed Google, и он показал, что измененные изображения и миниатюры оба имеют о дополнительных 10 КБ данных (файлы JPEG конкретно).

Что я могу добавить к своим сценариям для оптимизации размера файла?


ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ

Я использую imagick::FILTER_LANCZOS фильтр с установкой размытости 0.9 при вызове resizeImage() функция. JPEGs имеют качественную установку 80.

8
задан Sonny 30 March 2010 в 20:58
поделиться

2 ответа

Я нашел этот вопрос SO: « Инструменты для оптимизации JPEG? », в котором есть хорошие информация, но решения находятся за пределами PHP. Используя подсказки из решений этого вопроса, я обнаружил, что есть две оптимизации без потерь, которые могут быть выполнены:

  1. Оптимизация таблиц кодирования Хаффмана
  2. Удаление метаданных (EXIF и т. Д.)

Оба из них могут быть выполнены с помощью ImageMagick следующим образом:

  1. Согласно документации ImageMagick , оптимальные таблицы кодирования Хаффмана вычисляются по умолчанию. Об этом шаге уже позаботились, ура!
  2. Удаление метаданных может быть выполнено очень просто с помощью метода stripImage () .

Одно тестируемое мной изображение было уменьшено на 12 КБ. Размер файла 600x450 уменьшился с 63,42 КБ до 51,42 КБ, а эскиз 140x105 уменьшился с 17,98 КБ до 5,98 КБ.

10
ответ дан 5 December 2019 в 12:57
поделиться

Запустите ваши изображения через службу Yahoo SmushIt, где изображения преобразуются в PNG с точным количеством цветов. Без потери качества, но с потерей веса :)

3
ответ дан 5 December 2019 в 12:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: