Когда чередовать изображение?
Как общее эмпирическое правило, когда уместно сделать GIF-чересстрочный, PNG-чересстрочный и JPEG-прогрессивный?
Особенно при публикации изображения в Интернете.
6 ответов
JPEG: ДА - использовать прогрессивную развертку. Это делает файлы меньше ( каждый проход получает свою собственную таблицу Хаффмана), и частичный рендеринг выглядит довольно хорошо.
GIF: НЕТ - маловероятно, что файл будет меньше, частичный рендеринг плох, и для animGIF это бессмысленно. Лучше вообще не использовать GIF ( да, даже для анимации).
PNG: НЕТ - это вредит сжатию (поскольку данные каждого прохода статистически сильно отличаются). Если изображение большое, используйте высококачественный JPEG или PNG с потерями, если это возможно, поскольку они могут загружаться быстрее, чем предварительный просмотр большого PNG без потерь.
ImageOptim автоматически меняет прогрессивные / чересстрочные форматы, когда файлы уменьшаются.
Отказ от ответственности за придирки:
- В случае небольших и средних изображений прогрессивный предварительный просмотр каждого изображения не будет виден достаточно долго, чтобы пользователь мог оценить его. Некоторые браузеры даже не отрисовывают ничего, пока не будет загружен весь файл, поэтому лучше сосредоточиться на экономии пропускной способности, чтобы загрузить всю страницу как можно скорее.
- Непрогрессивный JPEG немного более эффективен, когда файлы крошечные (маленькие эскизы), но при этом экономия тоже крошечная.
- В iOS Safari максимально допустимый размер изображения для базового JPEG выше, чем в прогрессивном формате, но правильное решение заключается в том, чтобы обслуживать изображения в разумных для мобильных устройств размерах.
Мое общее правило: никогда не используйте переплетение. Чересстрочные форматы обычно занимают больше места, имеют (немного) большую сложность и меньшую поддержку в декодерах, и предполагаемые преимущества для пользовательского опыта по меньшей мере спорны. Некоторые аргументы в пользу PNG и вообще.
Некоторым людям нравятся чересстрочные или "прогрессивные" изображения, которые загружаются постепенно. Теория, лежащая в основе этих форматов, заключается в том, что пользователь может по крайней мере посмотреть на нечеткий полноразмерный прокси для изображения, пока все биты загружаются. На практике пользователь вынужден смотреть на нечеткий полноразмерный прокси для изображения, пока все биты загружаются. Готово? Ну, это выглядит нечетко. Ой, подождите, верхняя часть изображения, кажется, становится немного более детальной. Может быть, это сделано сейчас. Это все еще нечетко, хотя. Возможно, фотограф не использовал штатив. Ой, подождите, похоже, сейчас все проясняется...
Чересстрочные изображения немного менее эффективны, но обнаруживаются после более короткой задержки на стороне клиента при передаче по сети. ИМХО, их следует использовать, когда ожидаемое время загрузки изображения достаточно велико для восприятия пользователем (скажем, более 1 секунды). Разница в размере файла действительно очень мала, поэтому лучше быть слишком осторожным и использовать слишком много чересстрочных, а не слишком маленьких.
В обычном широкополосном интернете с 2012 года я бы использовал его для каждого изображения размером более 100 КБ.
Эти пункты должны быть полезны.
Чересстрочная развертка (в более общем смысле, прогрессивное отображение) - это метод отображения изображений на мониторе. Когда его использовать? Ваше решение должно основываться на следующих факторах:
•> Чересстрочные изображения меньше, чем чересстрочные.
•> Чересстрочные изображения вызывают меньше мерцания, чем не чересстрочные
•> Чересстрочные изображения гораздо удобнее для просмотра.
Чересстрочная развертка позволяет увидеть изображение до того, как все данные были переданы (заставляет их выглядеть быстрее и лучше) и дает вам "ощущение", что они загружаются быстрее.
СОВЕТ: Чересстрочная развертка не рекомендуется для небольших изображений, но обязательна, если зритель использует медленное соединение
Это просто копия из Y ответов, которые, как я думал, могут помочь понять. Оригинальный ответ можно найти по адресу: https://answers.yahoo.com/question/index?qid=20090211121956AAz7Xz8
Просто чтобы привести мой аргумент в два аргумента: чересстрочная развертка была введена много лет назад, когда скорость интернета была низкой, идея заключалась в том, что изображение будет отображаться постепенно, более определенным образом, все еще давая общий вид и ощущение изображения, не дожидаясь для всей вещи, чтобы загрузить.
Сегодня чересстрочная развертка в основном не нужна и должна использоваться в зависимости от общего размера передаваемого изображения.
Прогрессивное сканирование изображений в формате JPEG обеспечивает более четкое изображение при попытке уменьшить общий размер файла (т. Е. Представляет собой фактический режим сжатия, а не потоковый метод для битов, составляющих изображение).
PNG используют более сложный алгоритм, чем GIF.
На вебмастере есть интересный пост
В конечном счете, это зависит от того, как они будут использоваться.
Пост предполагает, что есть ограниченная - подлинная - поддержка прогрессивных изображений. И иногда они могут вызвать проблемы с плагинами, которые не поддерживают прогрессивный формат.
Надеюсь, это поможет.