Работа с масками во Flash - PullRequest
       17

Работа с масками во Flash

1 голос
/ 12 января 2010

У меня чертовски непросто заставить собственную маску работать над проектом, который я создаю.

Маска, которую я пытаюсь использовать, применяется в качестве маски пикселей на слое в документе Photoshop, над которым я работаю, но не могу понять, как правильно импортировать эту маску слоя во flash , чтобы затем скомпилировать в мой .swc и вызываться из Actionscript. (Я пишу на Flex)

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

container.mask = myMask;

Она будет отображаться как желаемая форма, а не просто квадратная коробка размером с мою форму?

Заранее спасибо, это сводит меня с ума!

Ответы [ 2 ]

2 голосов
/ 13 января 2010

Вам нужно будет преобразовать форму маски в Photoshop в векторную форму, а затем импортировать этот вектор во Flash.

В фотошопе:

  • Нажмите на миниатюру вашей маски в палитре слоев.
  • В палитре «Каналы» щелкните канал маски, затем нажмите кнопку «Загрузить канал как выделение» в нижней части палитры.
  • Откройте палитру Paths, затем нажмите кнопку «Создать рабочий путь». Это создаст векторный путь области маски. Нажмите только что созданный путь в палитре Paths. Вы увидите путь в окне документа.
  • Выберите инструмент выбора пути (черная стрелка), затем щелкните путь. Вы узнаете, что он выбран, когда сможете увидеть маркеры редактирования на пути. Щелкните правой кнопкой мыши путь и выберите «Определить пользовательскую форму», затем присвойте форме имя.
  • Создайте новый слой, затем выберите инструмент Custom Shape. Выберите фигуру, которую вы только что создали, из меню «Фигуры» на панели инструментов вверху. Нажмите на стрелку меню рядом с инструментами Shape, чтобы открыть окно Custom Shape Options. Нажмите переключатель «Определенный размер».
  • Нажмите внутри окна, чтобы разместить свою форму. Не имеет значения, какой цвет заливки, поскольку вы просто делаете это для импорта слоя формы, который вы только что создали во Flash.
  • Сохраните файл PSD.

Во Flash:

  • Выберите Файл-> Импорт-> Импортировать в библиотеку, затем найдите PSD-файл, который вы только что сохранили.
  • В окне настроек импорта Flash выберите слой формы, который вы создали в Photoshop. В разделе «Импортировать этот слой формы как:» выберите «Редактируемые контуры и стили слоя». Нажмите ОК.
  • Flash создаст папку ресурсов в библиотеке со всеми импортированными слоями. В этой папке ресурсов вы увидите символ с именем пользовательской фигуры, созданной в Photoshop. Откройте этот символ, и вы увидите прямоугольник с цветом заливки, который вы использовали в Photoshop, но есть также слой маски. Этот слой маски является векторной формой вашей маски. Преобразуйте это в свой собственный символ. Теперь вы можете использовать этот символ в качестве маски.
0 голосов
/ 13 января 2010

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

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

...