Графика
Правильно выбранный формат позволит сохранить картинку в минимальном размере с приличным качеством.
Изучите форматы файлов, используемых в вебе; разберитесь, какие форматы для каких картинок лучше подходят; научитесь оптимизировать изображения.
Предварительная подготовка
- Статья Растровая и векторная графика от HTML Academy.
- Статья Форматы изображений от HTML Academy.
Форматы файлов
JPG, PNG и SVG — это основные форматы графических файлов на вебе.
Есть еще GIF, но его область использования ограничилась забавными анимациями. Относительно недавно появилось еще несколько форматов (APNG, WEBP), но они пока не поддерживаются всеми распространенными браузерами.
В таблице кратко описано, для каких картинок подходят те или иные форматы.
Формат | Для каких изображений подходит |
---|---|
SVG | Векторные изображения, прежде всего иконки. |
JPG |
|
PNG |
|
PNG24 |
Обеспечивает максимальное качество, но файлы могут быть тяжеловатыми. |
GIF | Анимация, если не получается ее сделать на CSS/JS/SVG. |
Новые форматы, не все браузеры поддерживают | |
APNG | Анимированный PNG, сравнение с GIF и WEBP. |
WEBP | Многообещающий формат от Гугл. |
Подробнее про JPG
Формат jpg
был придуман специально для хранения фотографий в цифровом виде. Отсюда следует, что в jpg
нужно сохранять прежде всего фотки и фотко-подобные изображения.
jpg
и jpeg
— одно и то же. Просто два разных расширения для одного и того же формата файлов. Всегда используйте jpg
.
jpg
— формат с потерей качества. То есть при сохранении изображения в jpg
оно подвергается воздействию ряда алгоритмов, оптимизирующих информацию о цветах и других параметрах. Если выставить 95% качества при сохранении, то едва ли можно будет заметить отличия от оригинала. При 30% будет заметно множество дефектов (их еще называют артефактами).
Если на изображении присутствуют мелкие контрастные детали, не следует выставлять качество ниже 51. Можно взять за правило: начинать оптимизацию фоток с 51% и смотреть, что получается (внешний вид и размер файла). Во многих случаях это будет золотая середина.
Именование файлов
Графические файлы именуются маленькими буквами без пробелов.
Расширение файла должно быть трехбуквенным, если такое имеется (jpg
вместо jpeg
).
Слова в названии разделяются -
, префиксы и постфиксы — через _
.
Примеры:
# Плохо
TopMenuBackground.png # использованы большие буквы в названии
girlPhoto.JPEG # 4 буквы в расширении, большие буквы в имени файла и расширении
# Хорошо
bg_top-menu.png # префикс дает больше информации о файле
teaser-girl.jpg # понятно, что это завлекающая картинка с девушкой
Префиксы и постфиксы
Префикс информирует о том, что хранится в файле, пишется в начале названия файла и отделяется _
.
Примеры:
bnr_
— баннер (banner):bnr_home-skin-category.png
;arr_
— для стрелки (arrow):arr_left.png
;bg_
— для фона (background):bg_top-menu.png
;ico_
— для иконки:ico_search.svg
;slide_
— для изображения в слайдере:slide_pdp-carousel_1.jpg
.
Постфикс используется для вспомогательных деталей, пишется в конце названия и также отделяется _
. Постфикс можно использовать, например, для номера слайда:
slide_pdp-carousel_1.png
slide_pdp-carousel_2.png
Макеты
Макеты от дизайнеров, как правило, приходят либо из Фотошопа, либо из Скетча. Для работы с ними мы используем Avocode.
Большие макеты из Фотошопа
Макеты из Фотошопа обычно имеют расширение .psd
или .psb
(спецформат для больших файлов).
Если размер PSD/PSB-файла меньше 500Mb, то он нормально откроется Авокодом. В файлах больше 500Мб, скорее всего, используются артборды (хранится сразу несколько макетов) и нужно попросить дизайнера сохранить каждый артборд отдельно. Если вы работаете недавно и еще не в курсе, где искать дизайнера — расскажите своему менеджеру о вашей проблеме, он поможет разобраться.
Оптимизация изображений
Для оптимизации изображений под МакОС подойдет ImageOptim, для других ОС тоже есть варианты с графическим или CLI-интерфейсом.
ImageOptim — графический интерфейс для набора утилит, которые оптимизируют, но не портят изображения:
ImageOptim is a GUI for lossless image optimization tools: PNGOUT, AdvPNG, Pngcrush, OptiPNG, JpegOptim, MozJPEG, Gifsicle, SVGO, and svgcleaner.
Можно использовать инструменты для командной строки. Например, Imagemin. В проекте также удобно иметь скрипт для оптимизации изображений, его можно запускать через Гальп-плагин.
Это самые простые варианты. Более продвинутые техники оптимизации изображений описаны по ссылкам:
- Статья Оптимизация изображений от Гугля.
- Essential Image Optimization — онлайн-книга Эдди Османи.