Еще немного теории
Скорость формирования спрайтов
Формирование карты занимает довольно таки «много» времени. Однако основная идея qpimg заключается в том, чтобы была возможность создавать карты изображений на лету именно во время разработки сайта где задержки в генерации данных позволительны. При запуске же сайта сгенерированные карты будут использоваться из cache-папки и не будут создавать серверу дополнительных нагрузок.
А как же data:URI?
qpimg поддерживает вставку данных в css посредством data:URI. Однако Internet Explorer версии 7 (и ниже) не поддерживают отображение таких изображений. Поэтому qpimg для такой карты формирует дополнительную пару спрата и css-файла. При отдаче данных пользователю, qpimg проверяет текущий браузер и в зависимости от результата проверки отдает корректные для отображения данные.
Что получаем в итоге?
При формировании указанного CSS спрайта qpimg создает пару элементов:
- спрайт (map-image, карта-изображение) - общее изображение компактно упакованных объектов (изображений) карты;
- css-файл - файл таблицы стилей, описывающий позиционирование каждого объекта в карте, а также дополнительные атрибуты объектов;
Параметры каждой карты описываются в едином конфигурационном php-файле. Каждая карта имеет набор параметров, которыми задается общая стилистика карты, а также перечень объектов (изображений) с возможностью указания собственных свойств каждого объекта.
Глоссарий / Структура
- карта - это пара элементов «спрайт» & «css-файл»;
- спрайт - изображение компактно упакованных объектов (исходных картинок);
- объект - пользовательская картинка, которую необходимо поместить в спрайт;
- css-файл - файл стилей, описывающий стиль спрайта (фонового изображения) и позиционирование каждого объекта в спрайте, а также дополнительные свойства объекта.