![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jun 2008
Сообщений: 283
|
Здраствуйте
Загружаю в ролик другой swf, по оконьчанию загрузки, как пологается, измеряю его размеры, и сталкулся с тем, что если у ролика есть элементы которые находятся за пределами облости его фактических размеров, то ме выдаётся размеры с учётом тех элементов которые вне, то есть не фактический размер+( попробывал Stage.width, не получилось //*********************************************************************************************************** // | загрузка SWF | //*********************************************************************************************************** var Zagr_SWF:MovieClipLoader = new MovieClipLoader(); var ObList_SWF:Object = new Object(); //************************************************************** //________________________________ обработчик события успешной загрузки _root.ObList_SWF.onLoadInit = function(imga:MovieClip):Void { trace('ЗАГРУЗИЛОСЬ >> '+imga); trace(imga+'._width = '+imga._width); trace(imga+'._width = '+imga.Stage.width); // не работает так+( }; _root.Zagr_SWF.addListener(_root.ObList_SWF);/ _root.cont.createEmptyMovieClip('swf'+1,1); _root.Zagr_SWF.loadClip('swf/1.swf',eval('cont.swf'+1)); подскажите как это решить? спасибо |
|
|||||
|
полюбому вы позиционируете загруженый ролик точкой с координатами 0:0 и наверное знаете его H и W.
нарисуйте маску и все ... боьше никаких проблем не вижу. Stage. ... это будет относиться к загружающему мувику. |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 283
|
то что вы написали всё верно и всё понятно, но только если одно НО, про которое видимо надо было упоменут: у меня случай когда подгружаемые swf не одинакового размера (мол галлерея) и есть необходимость их центрировать, потому мне необходимо определять для каждого его размер фактический
|
|
|||||
|
Регистрация: Feb 2009
Сообщений: 108
|
То же как то с этим столкнулся. Stage загружаемой флешки, в случаях, когда содержатся объекты за сценой (т.е. в общем случае) никак не узнать, кроме как заранее загрузить размеры сцены из внешнего файла данных
![]() |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 283
|
то что по средством того xml сообщать о размерах предётся меня удручает канешне+(
странно это, ведь храниться где то размер ролика, ведь flashPlayer знает их, когда открывает ролик, логично же предположить что где то эта информация хранится |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 108
|
Информация о файле хранится в заголовке файла. В AS2 вы можете прочитать ее (первые байты файла) и обработать для получения размеров, но в итоге будет загрузка файла целиком. Только тут грузить как данные надо, а не как мувик x)
Байты с 8 по 17 включительно. Спецификация, стр. 255 http://www.adobe.com/devnet/swf/pdf/...t_spec_v10.pdfПоследний раз редактировалось MaskiShow; 06.11.2009 в 21:26. |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 283
|
спасибо за просвещение
уф а может подскажите пример, как загружать swf (как данные) и каким образом эти байты читать? |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 108
|
Для этого нужно подумать и ответить на вопрос (может кто-нибудь подскажет, самому интересно):
Если мы грузим как loadMovie или как loadClip, как потом обратится к загруженному контенту как к данным? Или наоборот, если загрузили файл как данные, как из них "сделать" мувик? Это чтобы 2 раза не грузить как данные и как мувик один и тот же файл... Как вариант можно php использовать... Последний раз редактировалось MaskiShow; 07.11.2009 в 02:59. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:11. |
|
|
« Предыдущая тема | Следующая тема » |
|
|