Почему Chrome некорректно отображает маленькие JPEG
Х@habr_comмедиа / агрегатор
1 недРазбор причин, по которым Chrome искажает мелкие JPEG-изображения из-за особенностей алгоритма декодирования и оптимизации.
Разработчики могут столкнуться с визуальными искажениями мелкой графики в браузере Chrome.
- Chrome использует агрессивную оптимизацию при масштабировании JPEG.
- Алгоритм отбрасывает часть данных изображения, что портит мелкие детали и иконки.
- Для корректного отображения мелких элементов рекомендуется использовать формат SVG.
Почему в Chrome маленькие JPEG выглядят иначе
Автор замечает у коллеги за компьютером тот же логотип, что и у себя, только тоньше и ближе к оригиналу. Размер иконки — 15 пикселей. В Firefox она рендерится одним образом, в Chrome заметно толще, будто края огрубели. Замена на SVG всё чинит, но вопрос остаётся: почему один и тот же JPEG выглядит по-разному.
Оказалось, дело не в баге, а в оптимизации, которая намеренно выбрасывает часть изображения. Chrome при сильном уменьшении не распаковывает файл целиком. Он декодирует картинку в масштабе с делителем восемь и отбрасывает высокочастотные коэффициенты, оставляя только грубую основу. Для иконки в 15 пикселей это значит, что сглаживания краёв и градиенты просто не доезжают.

Кратко (AI)
Автор объясняет, почему мелкие JPEG-изображения выглядят в Chrome хуже, чем в Firefox. Проблема заключается в оптимизации: при сильном уменьшении Chrome декодирует изображение с делителем восемь, отбрасывая высокочастотные данные, что приводит к потере деталей и огрублению краев.
Обсуждение
0Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖