Общая информация

В данном разделе представлены инструменты по работе с шаблонами, знания о которых позволяют улучшить процесс их разработки и создавать более качественные шаблоны.

Структура шаблона в Photoshop

Для того, чтобы PSD-документ шаблона был правильно прочитан Конструктором, необходимо придерживаться определенной структуры в Photoshop.

Структуру (“каркас”) шаблона определяют:

  • Группы слоев
  • Подгруппы слоев
  • Смарт-объекты областей вписывания

Группы слоев

Группы слоев могут быть 3 типов: "вертикаль", "горизонталь" и "квадрат". Названия этих групп всегда должны соответствовать их типу: "вертикаль", "горизонталь" и "квадрат". Также допускается именование групп на английском языке: "portrait", "landscape" и, соответственно, "square". Регистр букв при этом не играет роли.

Важно: как следует из названий групп, каждая из них отвечает за отдельную ориентацию шаблона. Т.е. в каждой отдельной группе хранятся слои и другие материалы, которые адаптированы под ту или иную ориентацию пользовательской фотографии.

Примером шаблона с двумя типами групп слоев (в рамках одного PSD-документа) является представленный ниже шаблон типа “рамка” с ориентациями “вертикаль” и “горизонталь”:

Вертикаль Горизонталь

В PSD-документе может быть как 1, 2, так и все 3 типа групп, определяющих для каких ориентаций пользовательских фотографий подходит шаблон.

Также в PSD-документе может не быть ни одной группы, отвечающей за ориентацию. В этом случае все остальные структурные элементы шаблона представляются в PSD-документе на “верхнем уровне” и такой шаблон становится шаблоном с универсальной ориентацией.

PSD-документ для шаблона
с универсальной ориентацией

Существуют также варианты, когда шаблон базируется сразу на нескольких PSD-документах, в каждом из которых хранится отдельная его ориентация. Такой подход необходим тогда, когда соотношение сторон холста шаблона отличается в зависимости от ориентаций.

Подгруппы слоев

Следующим элементом в структуре PSD-документа шаблона являются подгруппы слоев. Подгруппа слоев — это слои, которые в терминологии Photoshop были сгруппированы.

В подгруппы слоев помещаются графические слои и другие элементы, которые при перечитывании PSD-документа Конструктором растеризуются (“сливаются”) в один слой на уровне данной подгруппы.

Иными словами, все, что помещено в одну подгруппу слоев, предстает в роли одного слоя в Конструкторе шаблонов при перечитывании. Если внутри подгруппы для каких-либо графических слоев применяются блендинги и маски, то все они будут растеризованы на уровне данной подгруппы.

Блендинги и маски, примененные непосредственно к подгруппам слоев, будут перенесены на выгруженные Конструктором шаблонов графические слои.

Замечание: т.к. вся подгруппа растеризуется как единый слой, блендинг Пропустить для такой подгруппы не может быть обработан корректно и поэтому запрещен к применению для подгрупп слоев. Подробнее про особенности блендинга Пропустить см. здесь.

Говоря о месте в PSD-документе, подгруппы слоев могут размещаться в нем на следующих уровнях:

  • Если шаблон предполагает разные ориентации, то подгруппы слоев размещаются непосредственно в группах, определяющих ориентацию слоев.
  • Если шаблон предполагает универсальную ориентацию — подгруппы слоев располагаются на «корневом» уровне PSD-документа.
Размещение подгрупп слоев в
шаблоне с ориентацией «квадрат»
Размещение подгрупп слоев в
шаблоне с универсальной
ориентацией

Важно: стикеры являются частным случаем подгрупп графических слоев. Подгруппы стикеров обрабатываются особым образом.

Области вписывания

Область вписывания — это та область, в которую помещается пользовательская фотография. На уровне Photoshop она структурно представлена смарт-объектом. В зависимости от типа области вписывания, ее название всегда должно начинаться одним из вариантов, представленных ниже:

  • SQ— префикс для областей вписывания типа «рамка»
  • FSQ и FSQR — для областей вписывания типа «фигура»
  • Область вписывания лица — для областей вписывания лица

Помимо ведущей роли в позиционировании пользовательского фото в шаблоне, возможности смарт-объектов довольно широки:

  • В смарт-объектах областей вписывания можно хранить примерочные пользовательские фотографии.
  • Все смарт-объекты областей вписывания ( за исключением лицевых) можно искажать в угоду творческого замысла шаблона, но он должен оставаться четырехугольником (не обязательно с прямыми углами, но использовать деформацию запрещено. Если для вашего шаблона в художественных целях необходимо использование деформации области вписывания - ознакомьтесь с возможностями и ограничениями деформаций здесь).
  • Можно применять к смарт-объектам маски, блендинги (см. список подерживаемых блендингов), а также задавать прозрачность.

Области вписывания располагаются на одном уровне с подгруппами графических слоев и могут чередоваться относительно подгрупп графических слоев и других областей вписывания в любом порядке.

Важно:   Конструктор шаблонов не сможет прочитать psd-файл, если в нем на одном уровне будут находиться одинаковые по названию области вписывания, группы или подгруппы слоёв. Так, например, не может быть двух групп слоёв, называемых "квадрат", или в группе слоев "квадрат" не может быть подгрупп слоёв с одинаковым именем, например "1_v".

Если в psd-документе обнаружатся совпадения в указанных структурных единицах, при перечитывании psd-документа Конструктор шаблонов предложит переименовать их в автоматическом порядке.

Внутри подгрупп допускается совпадение в именовании слоёв.

Подгруппы имеют одинаковое
название, psd-файл не прочитается
Подгруппы имеют разные названия,
psd-файл прочитается успешно

Ниже представлена типовая схема соответствия структурных элементов Photoshop и слоев Конструктора шаблонов.

Важно: в процессе обработки шаблоном пользовательской фотографии, шаблон рисуется поверх белой подложки. Если холст шаблона не перекрыт полностью графикой (представленной графическими слоями, стикерами и областями вписывания), то через имеющиеся “пробелы” будет виднеться белая подложка.

Вспомогательные материалы для создания шаблона (сетки и прочее) вы можете разместить в двух местах:

  • на одном уровне с подгруппами слоев (не собирая слои с материалами в группы). Слои можно назвать как угодно (но без префикса SQ, чтобы Конструктор не перепутал служебные материалы со смарт-объектом области вписывания).
  • на верхнем уровне (на том же, где и группы вертикаль/горизонталь/...). Здесь слои можно собирать в группы с названиями, отличными от "вертикаль", "горизонталь" и "квадрат".
Хранение вспомогательных материалов
в шаблоне, предусматривающем
ориентации

Пример готового шаблона с разными ориентациями можно скачать здесь.

Пример готового шаблона с универсальной ориентацией можно скачать здесь.

Пример готового шаблона с разными ориентациями, разнесенными в разные psd-документы можно скачать здесь.

Ориентации в шаблонах

Ориентация пользовательской фотографии - это соотношение длинн ее сторон по горизонтали и вертикали. Так, в рамках Конструктора шаблонов пользовательские фотографии разделяются на 3 категории:

Квадрат - равенство сторон

Горизонталь - горизонтальная сторона больше

Вертикаль - горизонтальная сторона меньше

Нередко при разработке шаблонов приходится учитывать существование разных ориентаций. Так, например, шаблон ориентированный на обработку только фотографий с вертикальной ориентацией может давать неудовлетворительные результаты при обработке им фотографий с другой ориентацией.

Обработка вертикальной фотографии Обработка горизонтальной фотографии

Для реализации ряда творческих задач необходимо предусматривать вариации одного шаблона для 3 разных ориентаций пользовательской фотографии. Разработка шаблона с учетом разных ориентаций предполагает создание разных представлений этого шаблона (области вписывания, графические слои и т.д.), подходящих для каждой ориентации пользовательских фотографий. С помощью Конструктора шаблонов это можно сделать просто и удобно.

При разработке шаблона на основе выбранных ориентаций, PSD-материалы шаблона могут быть представлены по-разному.

Исходники для всех ориентаций шаблона могут храниться в одном PSD-документе, и, наоборот, каждая ориентация - в отдельном PSD-документе. Причина, по которой может быть необходимо хранить ориентации шаблона в разных PSD-документах, довольно проста - в некоторых шаблонах ввиду творческой задумки необходимо использовать разные размеры холста для каждой из ориентаций шаблона (см. рисунок ниже).

Размеры холста не отличаются Размеры холста отличаются

Ориентации можно определить при создании проекта, либо добавить\удалить их в любой момент работы над проектом. Подробнее об этом - здесь.

В близкой связи с ориентациями шаблона находятся режимы вписывания фотографий. Они также могут влиять на отображение пользовательской фотографии в шаблоне посредством ее кадрирования и других параметров. Узнать о режимах вписывания подробнее можно здесь.

Возможность хранения разных ориентаций

Иногда случается так, что творческая задумка предполагает разные пропорции холста для шаблона. Например, для вертикальной ориентации вам необходимо создать холст 1000 x 2000 px, а для горизонтальной — наоборот, 2000 x 1000 px. В рамках одного psd-документа это сделать не получится.

Здесь на помощь приходит возможность выделения ориентаций в разные psd-файлы, в которых можно отдельно настроить размеры холста, установив те, которые вам необходимы для данных ориентаций. Вы можете ознакомиться с видеоуроком, который посвящен этой функции Конструктора шаблонов.

Пример такого шаблона, разбитого по ориентациям на несколько psd-файлов, можно посмотреть здесь: скачать архив.

Копирование и вставка ориентаций шаблона

В Конструкторе шаблонов существует возможность вставлять в шаблон дополнительные ориентации. Так, например, вы можете разрабатывать шаблон на основе одной ориентации, а потом использовать ее в качестве прототипа для других ориентаций этого же шаблона.

Подобный подход к разработке шаблонов уже освещался в трех частях видеоуроков (первая, вторая и третья), но в Конструкторе с версии № 10 манипуляции по копированию\вставке ориентации шаблона автоматизированы.

Для того, чтобы вставить ориентацию в шаблон, необходимо в меню “Вставка” выбрать пункт “Ориентация шаблона”.

Откроется диалог добавления ориентации шаблона:

Он предоставляет возможность создать новую ориентацию путем копирования выбранной ориентации. Диалог позволяет:

  1. Выбрать ориентацию, которую следует скопировать.
  2. Выбрать, в качестве какой ориентации следует вставить полученную копию.
  3. В случае, если в проекте существует только универсальная ориентация, позволяет задать, в какую ориентацию следует преобразовать текущую универсальную.
  4. Вставить новую ориентацию в отдельный psd-документ.
  5. Указать путь для сохранения (если была выбрана вставка ориентации в новый PSD-документ). Путь необходимо указывать в той же папке, где лежит проект с родительским psd-документом.

Для копирования существующей ориентации следуйте инструкциям, описанным ниже:

  1. Выберите ориентацию для копирования. Если в вашем текущем шаблоне используется ориентация “Универсальная”, то используя пункт меню “Назначить новую ориентацию” (под номером 4 на скриншоте), укажите, в какую ориентацию следует конвертировать ориентацию “Универсальная”.
  2. В пункте меню “Вставить как” следует выбрать ориентацию, которую необходимо создать на основе текущей.
  3. Если нужно создать новую ориентацию в отдельном документе, следует поставить галочку напротив “Вставить в новый документ Photoshop”.
  4. В случае, если необходимо сохранить ориентацию в отдельном документе, следует указать каталог, в котором находится файл проекта и “родительский” psd-документ, с которого производилось копирование.
  5. Для подтверждения настроек копирования следует нажать на “ОК”.
  6. Для Конструктора шаблонов необходимо, чтобы все ориентации шаблона хранились или в одном psd-документе, или наоборот, чтобы каждая ориентация шаблона хранилась в отдельном psd-документе.

    Так, например, если в шаблоне есть две ориентации в рамках одного psd-документа и нужно добавить еще одну ориентацию в отдельный psd-документ, следует предварительно разнести существующие ориентации по разным PSD-документам и только потом добавлять нужную ориентацию (также отдельным psd-документом).

    В обратном случае, если две ориентации шаблона находятся каждая в отдельном psd-документе, не получится добавить третью ориентацию в один из psd-документов. Ее будет возможно добавить только как отдельный psd-документ.

Способы вписывания

Пользовательские фотографии даже при совпадении их ориентации с ориентациями шаблона часто имеют пропорции, которые отличаются от пропорций области вписывания шаблона. Обратимся к примеру ниже:

Шаблон (условное его представление) Пользовательская фотография

Пусть область вписывания в данном шаблоне имеет размер 330 пикселей по ширине и 470 по высоте, а пользовательская фотография - 450 пикселей по ширине и 800 пикселей по высоте.

Так, если попробовать вписать пользовательскую фотографию в шаблон “как есть”, то результат можно представить таким:

Условное наложение “как есть”

Как видно выше, пользовательская фотография не совпадает по размерам и пропорциям с областью вписывания. Для того, чтобы контролировать вписывание пользовательских фотографий в шаблон, в Конструкторе шаблонов предусмотрены механизмы управления вписыванием фотографий.

  • По меньшей стороне с кадрированием:
    • Пользовательская фотография растягивается\сжимается (с сохранением пропорций) так, чтобы размер ее меньшей стороны совпадал с размером меньшей стороны области вписывания
    • Части фотографии, которые не вошли в область вписывания, обрезаются.

Пример:

  • По большей стороне:
    • Пользовательская фотография растягивается\сжимается так, чтобы размер ее большей стороны совпадал с размером большей стороны области вписывания.
    • Если между пользовательской фотографией и границами области вписывания появляется пустое пространство - оно заполняется прозрачными полями, автоматическими создаваемыми Конструктором шаблонов.

Пример:

  • Растянуть без сохранения пропорций:
    • При вписывании в этом режиме, пользовательская фотография растягивается\ужимается без сохранения пропорций так, чтобы полностью заполнить область вписывания, это влечет за собой деформацию пользовательской фотографии.

Пример:

Способ вписывания фотографий настраивается в свойствах области вписывания. Выделив необходимую область вписывания, следует обратиться к блоку ее свойств, который находится под списком доступных слоев.

Далее следует обратиться к выпадающему списку в параметре “Способ вписывания”, в нем перечислены все возможные варианты вписывания юзерфото в данную область вписывания.

Разнесение ориентаций в разные PSD документы

Иногда при работе с шаблоном, имеющим разные ориентации в одном psd-документе, необходимо разнести его ориентации в разные psd-документы. Это можно сделать с помощью Конструктора всего в несколько кликов.

  • В Конструкторе шаблонов, в выпадающем меню “Шаблон” выберите пункт “Разделить на разные документы”.
  • В открывшемся окне с заголовком “Разделить ориентации” возможно изменить пути для будущих ориентаций, однако чаще всего это не является необходимым.

После нажатия на клавишу ОК Конструктор шаблонов произведёт разбиение “родительского” psd-документа на несколько отдельных psd-документов с разными ориентациями (во всплывающих окнах Photoshop с созданием нового psd-документа следует нажимать на ОК). Родительский файл можно будет удалить вручную.

Объединение PSD-документов с отдельными ориентациями в один PSD-файл

В процессе разработки шаблонов может возникнуть ситуация, когда разработка шаблона, предполагающего ориентации сначала велась в разных PSD-документах, но потом стало понятно, что в этом нет необходимости. Напротив, было бы удобнее работать со всеми ориентациями шаблона в одном PSD-документе.

Конструктор шаблонов позволяет объединять PSD-документы с разными ориентациями в единый PSD-документ. Для этого следует в меню “Шаблон” выбрать пункт “Объединить в один документ”.

В появившемся диалоговом окне “Объединить документы” можно уточнить размер холста для общего PSD-документа, а также определиться что следует сделать с исходными PSD-документами, в которых хранятся отдельные ориентации.

В случае, если объединяются PSD-документы, размеры холстов которых не совпадают, Конструктор шаблонов предупредит об этом.

При нажатии на ОК в окне предупреждения, открывается диалоговое окно “Объединить документы”, где необходимо указать эталонный размер холста для общего документа. При нажатии в окне предупреждения на Отмену, процесс слияния PSD-документов прервется и вы сможете вручную внести правки в размеры холстов.

Выгрузка шаблона в ZIP

Часть файлов, находящаяся в подпапке шаблона resources нужна только для работы Конструктора шаблонов, но не нужна для работы шаблона по прямому назначению. Итоговый архив шаблона с “лишними” файлами может иметь куда больший размер и привести в итоге к увеличению времени обработки шаблоном фотографий пользователей. Ввиду этого не рекомендуется вручную архивировать папку resources, вместо этого следует делать это с помощью соответствующей функции Конструктора шаблонов.

Функция “Выгрузить ресурсы шаблона в ZIP” доступна из меню “Файл”.

Эта функция создает в указанной папке zip-архив, в котором содержатся только те ресурсы шаблона, которые нужны для его работы. Полученный архив готов к загрузке на сервер (остается только добавить в него превью шаблона).

Zip-архив, подготавливаемый функцией выгрузки, не может заменить файл проекта и PSD. Полученный ZIP пригоден только для загрузки на сервера обработки. Для дальнейшей работы над проектом шаблона по-прежнему нужно иметь файл проекта и PSD.

Авторесайз шаблонов

Если юзерфото меньше шаблона, то оно будет растянуто до его размеров. Когда разница в размерах ощутима, результат обработки получается низкого качества: юзерфото в нем будет “мыльное”.

Для того, чтобы избежать проблем с расхождением размеров шаблонов и юзерфото, следует пользоваться авторесайзом шаблонов.

В диалоге создания нового или изменения существующего проекта следует выбрать пункт “Избегать увеличения фотографий”, указав при этом минимальный размер шаблона по меньшей стороне (см. скриншот ниже).

Если юзерфото больше шаблона - юзерфото будет уменьшено до тех размеров, которые позволят корректно вписать его в шаблон. Графика шаблона останется неизменного размера.

Если юзерфото относительно шаблона маленькое - графика шаблона уменьшится, подстраиваясь под реалии фотографии.

В случае, если юзерфото меньше указанного минимального размера шаблона, то шаблон уменьшится до лимита, а юзерфото увеличится до лимита шаблона.

Для шаблонов типа стикер и фильтр использовать данную опцию невозможно, ввиду того, что для них графика всегда масштабируется под юзерфото.

Если шаблон рассчитан на несколько юзерфото, то необходимо указать, размеры какого из этих юзерфото будут использованы для работы авторесайза. Для этого необходимо выбрать область вписывания с желаемым индексом фото и установить для неё значение параметра Не увеличивать как “true”.

Фактические размеры юзерфото с выбранным индексом будут взяты в качестве эталона и вся остальная графика будет масштабироваться относительно его размеров.

Если областей вписывания с индексом выбранной фотографии несколько, то значение параметра “Не увеличивать” будет передано всем областям вписывания с данным индексом.

Если вы попробуете переключить значение параметра Не увеличивать с true на false, то получите следующую ошибку.

Дело в том, что в шаблоне всегда должна быть фотография, относительно которой подбираются размеры шаблона. Для того, чтобы выставить параметр “Не увеличивать” в false, необходимо для другой фотографии (с другим индексом) проставить свойство параметра Не увеличивать как true. Это приведет к тому, что для областей вписывания с другими индексами значение Не увеличивать станет false.

По умолчанию Не увеличивать = true для области вписывания с индексом 0.

Создание шаблонов с несколькими юзерфото

В Конструкторе шаблонов можно создавать проекты, позволяющие использовать несколько разных юзерфото в одном шаблоне.

Алгоритм создания шаблона, предусматривающего использование нескольких юзерфото, одинаково работает для всех типов шаблонов, кроме шаблонов типа стикер.

Для шаблонов типа стикер возможно использовать только одну область вписывания и, как следствие, только одно юзерфото.

Ниже представлены типовые шаги по созданию шаблона с несколькими юзерфото:

  • В psd-документе необходимо разместить более одного смарт-объекта области вписывания.
  • В Конструкторе шаблонов необходимо установить индекс фотографии для каждой из областей вписывания.

Индекс фотографии - это порядковый номер фотографии, загружаемой пользователем.

Принято считать, что фотографии, загруженные пользователем, пронумерованы от 0 до N-1, где N - это количество фотографий. Индекс фотографии, установленный для конкретной области вписывания, означает, что в нее будет вписана фотография с соответствующим порядковым номером.

Так, если в шаблоне 3 области вписывания, каждая из которых предполагает отдельное юзерфото, то области вписывания должны иметь индексы фотографии 0, 1, 2, (начинаться с 0 и не иметь промежутков в нумерации).

Также можно указать нескольким областям вписывания порядковый номер одной фотографии. Например, в шаблоне с семью областями вписывания, предполагающем использование трех юзерфото, индексы фотографий для областей вписывания могут быть в таком порядке: 0, 1, 1, 2, 0, 1, 2.

Существуют ограничения по указанию индексов фотографии:

  • нумерация индексов фотографии должна начинаться с 0.
  • индекс фоторграфии не может быть больше, чем M-1, где M - количество областей вписывания.
  • в последовательности использованных индексов фотографии не должно быть пропусков. То есть если в шаблоне максимальный использованный индекс фотографии равен 5, то при этом должны быть использованы все индексы от 0 до 5 без пропусков. То есть нельзя, например, пропустить индекс 4.
  • количество уникальных используемых индексов фотографии в разных ориентациях шаблона должно быть одинаковым.

Тестировать шаблон с несколькими юзерфото можно так же, как и обычный шаблон, используя панель с тестовыми фото и кнопки Обработать всё/Обработать выбранное. В этом случае во все области вписывания будет вставлена одна и та же фотография.

Для более детального тестирования с использованием различных фотографий, следует вызвать диалог обработки нескольких юзерфото. Это можно сделать двумя способами:

  1. Выделив несколько юзерфото в правой панели главного окна Конструктора шаблонов и правой кнопкой мыши вызвав диалог “Обработать несколько фото”:
  2. Через меню “Файл - > Обработать несколько фото”:

Откроется диалог проверки шаблона на нескольких юзерфото.

Перед обработкой тестового фото выполняется проверка корректности индексов. Возникшие на этом этапе ошибки и пути их решения описаны в конце данного раздела.

Следует добавить несколько фотографий для тестирования шаблона. В данном примере - 2 фотографии для областей вписывания. Стрелки “вправо” и “влево” позволяют добавлять тестовые фото в тестовый набор и удалять их из набора. При необходимости с помощью кнопок со стрелками вверх и вниз можно менять порядок добавленных фотографий. Кнопка “Наугад” позволяет сформировать тестовый набор случайным образом из доступных фото.

Клик по непарной кнопке со стрелкой “вправо” обработает шаблоном выбранные пользовательские фотографии. Сохранить результат обработки можно кликнув на кнопку “Выгрузить результат”.

Перед обработкой тестового фото выполняется проверка корректности индексов. В результате проверки могут быть выданы следующие ошибки:

  • Использован индекс фотографии, превышающий количество областей вписывания.
    Если у вас в шаблоне используется M областей вписывания для каждой ориентации, ни один индекс не может превышать M-1. Найдите во всех ориентациях индексы, значения которых больше M-1 и уменьшите их.
  • Пропущен индекс фотографии.
    Убедитесь, что использованы все индексы, начиная с 0. То есть если в шаблоне максимальный использованный индекс равен 5, то при этом должны быть использованы все индексы от 0 до 5 без пропусков. То есть нельзя, например, пропустить индекс 4.
  • Отсутствует нулевой индекс фотографии среди областей вписывания.
    В шаблоне не найдено областей вписывания с индексом, равным 0. Нумерация фотографий начинается с нуля, соответственно для первой фотографии нужно использовать индекс 0. Выставьте нулевой индекс на одну из областей вписывания.
  • Количество уникальных индексов фотографии у областей вписывания должно быть одинаковым во всех ориентациях.
    Количество уникальных индексов, то есть количество уникальных юзерфото, должно быть одинаково для всех ориентаций шаблона. Сверьте использование индексов в разных ориентациях и выставьте одинаковый набор индексов для всех ориентаций.

Если шаблон рассчитан на несколько юзерфото, то необходимо указать, размеры какого из этих юзерфото будут использованы для работы авторесайза. Для этого необходимо выбрать область вписывания с желаемым индексом фотографии и установить для неё значение параметра Не увеличивать как “true”.

Фактические размеры юзерфото с выбранным индексом будут взяты в качестве эталона и вся остальная графика будет масштабироваться относительно его размеров.

Если областей вписывания с индексом выбранной фотографии несколько, то значение параметра “Не увеличивать” будет передано всем областям вписывания с данным индексом.

Если вы попробуете переключить значение параметра Не увеличивать с true на false, то получите следующую ошибку.

Дело в том, что в шаблоне всегда должна быть фотография, относительно которой подбираются размеры шаблона. Для того, чтобы выставить параметр “Не увеличивать” в false, необходимо для другой фотографии (с другим индексом) проставить свойство параметра Не увеличивать как true. Это приведет к тому, что для областей вписывания с другими индексами значение Не увеличивать станет false.

По умолчанию Не увеличивать = true для области вписывания с индексом 0.

Динамические маски

Динамическая маска - это маска, которая строится по указанным областям вписывания и может применяться как для области вписывания, так и для графического слоя.

Тип области вписывания для построения по ней динамической маски может быть любым - фигура, лицевая или даже четырёхугольная области вписывания. Конструктор шаблонов создаст динамическую маску для пользовательской фотографии, построив ее по:

  • по фигуре;
  • по лицу;
  • по голове;
  • по коже;
  • по волосам;
  • по губам;
  • по радужке;
  • по стикерам;
  • по пользовательской фотографии;
  • по небу;
  • по одежде;
  • по частям лица
  • по очкам.

Чтобы понять концепцию динамических масок, обратимся к шаблону с применением динамических масок по фигуре.

Оригинальное фото Результат обработки

Обратите внимание, что графический слой маскирован в точности по тем контурам, которые соответствуют фигуре. Если этим же шаблоном будет обработана другая пользовательская фотография, имеющая другие контуры фигуры - динамическая маска будет построена по новой фигуре.

Принцип работы такого шаблона можно понять из схемы ниже:

Графический слой Динамическая маска по фигуре c пользовательской фотографии Результат обработки

Наличие у графического слоя динамической маски никак не ограничивает использование блендингов.

Обратиться к диалогу добавления динамических масок можно одним из следующих способов:

  • кликнув по необходимому графическому слою / области вписывания правой кнопкой мыши и выбрав в контекстном меню пункт “Параметры применения динамических масок...”;
  • выделив необходимый графический слой / область вписывания в списке и обратившись к меню “Слой” в горизонтальной навигации Конструктора шаблонов. В появившемся контекстном меню следует выбрать пункт “Параметры применения динамических масок...”;
  • выделив необходимый графический слой / область вписывания в списке и обратившись к его параметрам в блоке под списком слоев.

В редакторе динамических масок для выбранного слоя или области вписывания отображается список всех областей вписывания, имеющихся в текущей ориентации.

Для графического слоя/области вписывания, к которой будет применяться маска, можно опционально выключить маску, имеющуюся в PSD-документе, поставив галочку напротив “Игнорировать маску слоя, заданную в Photoshop”. Это может быть удобно для выключения тестовой маски, нарисованной в Photoshop для прикидки конечного результата.

При построении маски для каждой выбранной области вписывания можно выбрать тип маски:

  • по фигуре;
  • по лицу;
  • по голове;
  • по коже;
  • по волосам;
  • по губам;
  • по радужке;
  • по стикерам;
  • по пользовательской фотографии;
  • по небу;
  • по одежде
  • по частям лица
  • по очкам.

Маску можно построить как по одной, так и по нескольким областям вписывания. В случае построения маски по нескольким областям вписывания, полученные маски совмещаются в одну. Совмещение масок может происходить в разных режимах. Также маски возможно инвертировать.

Конструктор шаблонов поддерживает следующие режимы совмещения масок:

  • Умножение — цветовое значение каждого пикселя одной маски умножается на значение того же пикселя другой маски. Цветовое значение высчитывается в градациях серого, исходя из диапазона [0;1].
  • Сложение — цветовые значения масок складываются. Если результат сложения в конкретном пикселе больше 1, в итоговой маске будет ровно 1.
  • Вычитание — цветовые значения масок вычитаются. Если результат вычитания в конкретном пикселе меньше 0, в итоговой маске будет ровно 0.
  • Минимум — в каждом пикселе выбирается наименьшее значение из двух масок.
  • Максимум —— в каждом пикселе выбирается наибольшее значение из двух масок.

Схемы ниже иллюстрируют примеры умножения, сложения, вычитания, а также минимума и максимума для динамических масок.

Динамическая маска 1 Динамическая маска 2

Сложение масок 1 и 2 Умножение масок 1 и 2

Вычитание масок 1 и 2 Минимум масок 1 и 2

Максимум масок 1 и 2

Параметры генерации динамической маски

Конструктор шаблонов позволяет настроить параметры создания динамической маски. Для того, чтобы открыть диалог параметров создания динамической маски для данной области вписывания, следуйте любому из трех способов:

  • кликните правой кнопкой мыши по области вписывания и в контекстном меню выберите пункт “Параметры создания динамической маски”.
  • выделите необходимую область вписывания и выберите пункт “Параметры создания динамической маски” в панели детализации слоев.
  • выделите необходимую область вписывания и выберите в меню “слой” пункт “Параметры создания динамической маски”.

В открывшемся окне с помощью вкладок можно переключаться между разными типами масок и настраивать их параметры для каждого типа отдельно.

Параметры создания маски задаются на области вписывания и используются везде, где используются маски, построенные по этой области вписывания. Если вы применяете к нескольким графическим слоям маску фигуры, созданную по одной области вписывания, и вы хотите изменить вытравку маски, вам необходимо открыть параметры создания маски в данной области вписывания. При этом вытравка изменится везде, где используется соответствующая маска.

Важно:

  • настройки маски по лицу используются только для операций с лицами (такими как вырезание лица при его вписывании, построение динамической маски по лицу и использование лицевых фильтров).
  • Настройки масок по фигуре работают аналогично, но в контексте фигур.
  • Настройки для остальных масок работают при создании соответствующих масок.

Вне зависимости от типа маски, всем им доступен идентичный набор параметров:

  • Вытравка фигуры — определяет то, насколько сильно сдвигать границу динамической маски к границам выделенного объекта (фигуры, лица, области кожи и т.п. в зависимости от типа маски). При этом граница области становится четкой за счет бинаризации. Если установлено слишком большое значение, то произойдет “обрезка” динамической маской части изображения. Если указать в данном параметре отрицательное значение - произойдет обратное явление, когда граница будет сдвигаться от фигуры, в сторону окружающего ее фона, что хорошо видно на примерах ниже (нажмите на лупу чтобы увеличить конкретный пример):

    Исходное изображение Вытравка фигуры: 0
    Вытравка фигуры: 10 Вытравка фигуры: -10
  • Радиус размытия — определяет то, насколько сильно размыть границу маски после вытравки изображения (см. выше). Работает только в том случае, если для вытравки установлено ненулевое значение.
  • Размеры в процентах— переключает единицы измерения для заданных параметров вытравки и радиуса размытия краев динамической маски. Если установлено значение False - используются пиксели, если True - используются проценты.

Следует также иметь в виду, что слишком большие значения вытравки и размытия замедляют работу шаблона

Для маски по стикерам параметры недоступны. Она используется в том виде, в котором нарисована в Photoshop и в соответствии с позицией, заданной фильтром “Растеризация”.

Обязательные маски

Для динамической маски можно указать будет ли она обязательной в создаваемом шаблоне. Эта настройка определяет поведение шаблона в том случае, если на пользовательской фотографии не удалось обнаружить маскируемый объект. Если маска помечена как обязательная, то обработка завершится ошибкой, если маску не удалось получить. Если маска помечена как необязательная, обработка будет продолжена.

Настройка находится в диалоге параметров применения масок в виде галочки в колонке "Обязательная маска".

Возможные варианты применения обязательной маски:

  • Шаблон, действие которого основано на масках. В случае, если маску не удается построить, пользователь получит ошибку вида "Обработка тестового фото неудачна. Объект не найден на фотографии. Попробуйте другую фотографию".

    В предыдущих версиях Конструктора шаблонов, если маски не удавалось построить, пользователь на выходе получал фото без изменений.

  • Шаблон, содержащий графические элементы, которые дополняют шаблон, но не являются его ключевым моментом. Если объект, по которому строится необязательная маска, отсутствует на фотографии, то пользователь получит результат без графических элементов, строящихся по отсутствующему объекту.
  • Комбы/цепочки обработок. В случае, если в комбе на одном из этапов участвует шаблон с обязательными масками, то невозможность получить искомую маску приведет к тому, что обработка комбы звершится с ошибкой вида "Объект не найден на фотографии. Попробуйте другую фотографию".

При выборе параметров обязательности масок следует соблюдать баланс — с одной стороны, маски, без которых эффект совсем теряется, должны быть обязательными. С другой стороны, всё что можно сделать необязательным без серьезного ущерба результату — следует сделать необязательным.

В некоторых случаях обработка пользовательской фотографии может завершиться с ошибкой вида "Объект не найден на фотографии. Попробуйте другую фотографию" даже при условии, что все маски в шаблоне помечены как необязательные. Это может произойти в том случае, если шаблон использует некоторые возможности, для работы которых требуется определенная маска. Например, шаблон содержит область вписывания лица, или стикеры, которые строятся по тем точкам привязки, которые не могут быть обнаружены на конкретной пользовательской фотографии.

Примеры динамических масок

Рассмотрим стандартные способы применения разных типов динамических масок, примененных как к области вписывания и построенных по этой же самой области вписывания, так и к графическому слою. В данном случае мы применили маску по фигуре на четырехугольную область вписывания (найденный объект остается, остальное отрезается).


Исходное фото Результат

Как уже было написано выше, маски могут строиться не только по фигуре, но и по овалу лица и контурам головы.

Исходное фото Динамическая маска по лицу

Исходное фото Динамическая маска по голове

Также маску можно строить по контурам кожи и волос, обнаруженных на фотографии пользователя. Если применить маску к графическому слою с блендингом, то можно получить следующие результаты:


Исходное фото Динамическая маска по коже

Обратите внимание, что динамическая маска по коже исключает области глаз и губ.

Исходное фото Динамическая маска по волосам

Исходное фото Динамическая маска по радужкам

Исходное фото Динамическая маска по губам

Динамическая маска, построенная по небу, выделит участки неба на фотографии пользователя.

Исходное фото Результат

Динамическая маска по одежде выделяет на пользовательской фотографии любую одежду.

Исходное фото Результат

В зависимости от найденных на пользовательской фотографии элементов одежды, маска может состоять как из одного, так и из нескольких элементов.


Динамическая маска по очкам выделяет очки на пользовательской фотографии.

Исходное фото Результат

Применение масок с инверсией

Возвращаясь к полученным выше результатам, применим к области вписывания инвертированную маску, построенную по фигуре. Это позволит получить эффект “отсутствия фигуры на фотографии”.

Исходное фото Результат

Аналогичного эффекта можно добиться, выполнив ту же процедуру с маской, построенной по овалу лица. Если инвертировать данную маску и применить её к области вписывания типа Фигура, получится следующий результат:

Исходное фото Результат

Маска по стикерам

Отдельно стоит упомянуть создание маски по стикерам. Данная маска требует хотя бы одного фильтра Растеризация для той области вписывания, по которой строится маска. При построении маска учитывает только прозрачность пикселей и игнорирует любые цвета исходного стикера.


В примере ниже показано построение маски, примененной к сплошному синему слою, по стикеру, который создан с применением градиентного слоя.

Исходное фото Фото со стикером Динамическая маска по стикерам

Подробнее о практическом применении динамической маски по стикерам можно узнать в этом разделе.

Маска по пользовательской фотографии

Данная маска создается путем преобразования фото в градации серого. Полученное изображение интерпретируется конструктором шаблонов как маска.

Исходное фото Результат

Путём дальнейшей обработки фотографии можно получить более интересные результаты. В примере ниже мы добавили фильтр Определение границ с параметром детализации 1, сделали прозрачной четырёхугольную область вписывания и построили маску, применив её к цветному графическому слою.

Исходное фото Исходное фото с фильтром Результат применения маски

При работе с маской по пользовательской фотографии нежелательно выставление ненулевых параметров "вытравка" и "размытие".

Пример разработки шаблона с использованием динамических масок по пользовательской фотографии можно найти в этом разделе.

Маска по частям лица

Маска по частям лица позволяет обработать отдельно или группой некоторые части лица

Исходное фото Результат

Для построения такой маски надо в диалоге "Параметры применения динамических масок выбрать" тип маски "по частям лица", нажать кнопку "Выбрать части маски" и выбрать части, из которых будет состоять маска.

Ниже на схеме показаны части лица, по которым возможно построить маску

1. Лоб

2-3. Висок левый/правый

4-5. Скула левая/правая

6-7. Подглазничный левый/правый

8-9. Нижнечелюстной левый/правый

10-11. Бровь левая/правая

12-13. Глазница левая/правая

14-15. Глаз левый/правый

16-17. Радужка левая/правая

18-19. Стенка носа левая/правая

20. Переносица

21. Кончик носа

22. Крылья носа

23-24. Ноздря левая/правая

25-26. Облась усов левая/правая

27. Желобок

28. Губа верхняя

29. Губа нижняя

30. Подгубный

31. Подбородок

32. Полость рта

33-34. Зрачок левый/правый

Динамическая позиция

Динамическая позиция — это инструмент, который позволяет задать позицию для области вписывания или графического слоя в зависимости от позиции объектов, расположенных на пользовательской фотографии. Место позиционирования определяется охватывающим прямоугольником маски объекта, по которому позиционируется слой.

Динамическая позиция напрямую зависит от позиции и размера динамической маски и строится по тем же областям. Подробнее о типах динамической маски можно узнать в предыдущем разделе.

Чтобы спозиционировать слой на объекте пользовательской фотографии, конструктор шаблонов строит маску по этому объекту, вычисляет охватывающий прямоугольник маски, в рамки которого и вписывает позиционируемый слой.

Схема ниже наглядно демонстрирует принцип работы на примере динамической позиции, построенной по голове.

Оригинальное фото Динамическая маска Динамическая позиция

Вызвать диалог добавления динамической позиции можно следующими способами:

  • Выделить необходимый графический слой / область вписывания из списка и в меню "Слой" выбрать пункт "Динамическая позиция...".
  • Выделить необходимый графический слой / область вписывания из списка и в его параметрах под списком слоев выбрать пункт "Динамическая позиция".

Редактор динамической позиции отображает все области вписывания, доступные в текущей ориентации.

Следует заметить, что интерфейс редактора динамической позиции схож с интерфейсом редактора динамических масок. На изображении ниже отмечены элементы интерфейса, которые отличают один редактор от другого: это заголовок окна [1], описание редактора [2]и функциональные элементы [3].

Динамическую позицию можно построить как по одной, так и по нескольким областям вписывания. В случае построения динамической позиции по нескольким областям вписывания, полученные в результате построения маски, совмещаются в одну. Совмещение масок может происходить в разных режимах. Подробно про режимы совмещения масок можно прочитать выше, в разделе "Динамические маски".

Для динамической позиции можно указать будет ли она обязательной в создаваемом шаблоне. Эта настройка определяет поведение шаблона в том случае, если на фотографии не удалось обнаружить объект, по которому задается динамическая позиция слоя. Подробнее о применении этой опции можно прочитать в разделе "Динамические маски".

Так же можно инвертировать динамическую позицию, но в большинстве случаев на практике это не имеет смысла, поскольку независимо от типа маски, заполненной окажется вся область вписывания целиком. Однако, в особых случаях со сложными шаблонами, применение данной функции может дать положительный результат.

К динамической позиции, построенной по области вписывания, можно применить вращение по маске. По умолчанию слой позиционируется с отклонением 0° от вертикальной оси. Вращение по маске поворачивает позиционируемый слой на определенный угол, который вычисляется, исходя из формы построенной маски.

Без вращения С вращением

Следует отдельно упомянуть, что вращение по маске очень часто дает неожиданные результаты, поэтому пользоваться данной функцией следует с осторожностью. Ниже пример неудачного применения динамической позиции с вращением по маске.

Без вращения С вращением

Во избежание нежелательных эффектов от использования функции "Вращение по маске", рекомендуется применять её только на графические слои с однотонной заливкой.

Ограничения

При построении динамической позиции запрещены циклические зависимости. Ниже приведены простейшие варианты зависимостей:

  • нельзя построить динамическую позицию слоя по тому же слою;
  • нельзя спозиционировать два разных слоя друг на друга.

Кнопка "Показать карту зависимостей позиции" в левом нижнем углу редактора динамической позиции отобразит наглядную схему построения динамической позиции.

При создании шаблона с использованием статичной маски из Photoshop, к данной маске не будет применена динамическая позиция.

Анимация в шаблонах

На базе существующих типов шаблонов можно создавать анимированные. Подробнее о разработке анимированных шаблонов можно узнать здесь.

Существуют некоторые ограничения по использованию анимации в шаблонах. Они носят временный характер. Подробнее узнать об ограничениях можно здесь.