PDA

Просмотр полной версии : swf использует другую swf через третью swf.


stweet
07.10.2011, 04:08
Суть вопроса с замысловатым манёврам.

И так примеры:

Есть главная swf которая грузит в себя остальные 2.
а) "шрифты(swf)" содержит в себе всего один шрифт и регистрирует его в приложении.
б) "логотип(swf)" содержит Sprite с TextField но, TextField.embedFonts = true;

Т.е. я пытаюсь сделать как:

Загрузив шрифты я регистрирую их в приложении, а после, загрузив логотип пытаюсь
воспользоваться этими шрифтами. По сути, создав любой класс в приложении с параметром
embedFonts = true; он будит работать как надо, тогда вопрос:
"Почему загруженная swf - логотип не использует зарегистрированный шрифт в приложении?"

Что я делаю не так?

BuKT
07.10.2011, 08:07
А разве для этого swf-б сама не должна грузить swf-а? Как мне кажется, на момент загрузки (то есть начала рантайма) swf уже сформирована.

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

stweet
07.10.2011, 23:59
Да, я так уже думал, но, тогда придётся всем последующим swf-кам объяснять что шрифты уже есть в приложении.

Я так понимаю, скомпилированная swf(а в моём случае это swf-б) уже не воспользуется возможностями приложения т.к. код в ней уже сформирован.
В swf-б я создал метод который пересоздаёт логотип. Загрузив в главную swf-ку после регистрации шрифтов воспользовался методом пересоздания логотипа, изменений нет, логотип так и не увидел шрифты.
Грузить шрифты и туда и туда, весомо.

Вывод:

Создание объекта "логотип" через xml. Минус такой манипуляции, защиты ни какой.