Что такое JPG
Самый распространённый формат фотографий: его понимает всё, что умеет показывать картинки. Разбираем, как он устроен и где у него границы.
JPG и JPEG — одно и то же
Формат придумала группа Joint Photographic Experts Group, отсюда JPEG. Стандарт вышел в 1992 году.
Расширение из трёх букв появилось из-за MS-DOS: там больше трёх символов не помещалось, и .jpeg превратился в .jpg. Windows ограничение давно сняла, а привычка осталась. Внутри файлы одинаковые, переименование ничего не меняет.
Как он сжимает
Картинка режется на квадраты 8 × 8 пикселей, и каждый квадрат раскладывается на частоты: отдельно общий тон, отдельно мелкие переходы внутри. Дальше кодек огрубляет то, что глаз почти не замечает, — самые мелкие детали.
Цвету достаётся сильнее, чем яркости: к перепадам яркости зрение чувствительнее, поэтому цветовые данные прореживают вдвое почти без видимых последствий.
Ползунок качества управляет тем, насколько грубо всё это округляется. При 90% выброшено мало, при 40% от каждого квадрата остаётся общее пятно — их и видно на небе и на градиентах.
Чего он не умеет
Прозрачности в JPG нет. Если сохранить в него логотип с прозрачным фоном, фон станет белым или того цвета, который выберете при конвертации.
Анимации тоже нет, слоёв нет.
И главное: потери накапливаются. Каждое открытие и пересохранение — это новое сжатие поверх старого. Пять раз подряд отредактировать и сохранить один и тот же JPG — заметно испортить его. Если предстоит долгая работа над картинкой, держите её в PNG, а в JPG сохраняйте один раз, в конце.
Когда JPG подходит, а когда нет
Подходит для фотографий: там плавные переходы и шум, то есть ровно то, с чем алгоритм справляется лучше всего.
Не подходит для скриншотов, схем, чертежей, логотипов и всего, где есть резкие границы и мелкий текст. Вокруг букв появится грязноватый ореол, а тонкие линии поплывут. Для такого берите PNG.
Сколько должен весить файл
Ориентиры для фотографии 1920 × 1080: при качестве 90% — примерно 400–700 КБ, при 80% — 200–400 КБ, при 60% — около 100 КБ, но уже с видимыми артефактами.
Для картинки на сайте разумный потолок — 300 КБ, для аватара или превью хватает 50 КБ. Если файл заметно больше, скорее всего дело в лишнем разрешении: снимок 4000 пикселей в ширину незачем показывать в блоке шириной 800.