JPEG -> более сжатый JPEG - стоит ли это того? - PullRequest
4 голосов
/ 31 октября 2008

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

Изображения уже в формате JPEG. Я знаю, что в PNG есть много лишних ошибок, которые могут значительно увеличить размер файла, но у меня меньше опыта с JPEG. Итак, пара связанных вопросов:

  1. Стоит ли еще сжимать JPEG? Похоже, что дальнейшее сжатие того, что уже находится в формате с потерями, может принести больше вреда (плохого качества), чем хорошего (экономия 10 +% от размера файла).

  2. Существуют ли другие методы для уменьшения размера файла? Я не знаю, являются ли метаданные EXIF ​​или другие метаданные частью какого-либо из этих изображений, и если их сокращение - существенное улучшение.

  3. Любой опыт / рекомендации по использованию GD или ImageMagick (или что-то еще?) Также есть коммерческая библиотека сжатия изображений от компании Spinwave.

Ответы [ 4 ]

1 голос
/ 31 октября 2008

Используете ли вы миниатюрные изображения? Если да, то сохраняются ли они отдельно или изображение большего размера загружается полностью и просто изменяется на веб-странице? Размер отдельных миниатюр по мере их отображения на ваших страницах сэкономит большую пропускную способность.

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

GD или IM оба работают хорошо.

0 голосов
/ 06 августа 2010

Мой опыт показывает, что некоторые изображения "продукта" создаются с метаданными цветового пространства для точного воспроизведения цвета на печатных носителях. Это может увеличить размер файла JPEG. Мне удалось уменьшить jpeg-файлы примерно на 30% в некоторых случаях, просто удалив EXIF.

0 голосов
/ 31 октября 2008
  1. Для меня качество выглядит хорошо, пока вы не начнете снижать качество на 75-80%.
  2. Я не думаю, что какие-либо метаданные (JPEG также поддерживает IPTC) сильно раздули бы размер файла - но, возможно, стоило бы сделать некоторые свои собственные тесты (что-то для блога!)
  3. Меня привели в PHP, чтобы любить GD (я знаю одного из авторов). Просто remmeber для кэширования изображений в виде файлов. Например:

    $ im = imagecreatefromjpeg ('file.jpg');

    // Функция вывода

    // 80 = качество

    imagejpeg ($ im, сохраненный файл.jpg, 80);

Форматирование кода не работает!

0 голосов
/ 31 октября 2008
  • Существуют сжатия без потерь, такие как .ZIP, но они обычно хуже и не очень полезны для уже сжатого формата.

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

  • JPEG лучше для фотографий. PNG лучше для логотипов и простых цветов.

  • ImageMagick должен позволять вам изменять размеры jpeg из командной строки или из библиотеки lib. Смотри http://www.imagemagick.org/Usage/formats/#jpg

...