![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+1.3 18.03.10]
Регистрация: Mar 2010
Сообщений: 45
|
Здравствуйте форумчане.
Буду краток ))) Есть API для работы с графикой, и некий метод, который в качестве параметра принимает Class граф.изображения, которое предварительно встроено с использованием embed. В самом методе вот что делается с этим классом: [Embed(source = "flower.png")] protected var UserImage:Class; ... loadGraphic(UserImage); ... //а это в API public function loadGraphic(Graphic:Class) { ... var localBitmapData:BitmapData = (new Graphic).bitmapData; } Всякие фокусы с loadbytes и последующим (bytesloader.data as Class) или (Loader.content) ессно не работают и выплёвывают ошибку: Error #1007: Попытка реализации в объекте, который не является конструктором. Помогите ) |
|
|||||
|
Если Вы можете изменить метод loadGraphic, то что то типа этого должно работать:
public function loadGraphic(Graphic:Object) { ... var localBitmapData:BitmapData = Graphic is Class ? ((new Graphic).bitmapData) : (Graphic as Bitmap).bitmapData; } loadGraphic(loader.content as Bitmap); Добавлено через 6 минут А если нет, то может сработает костыль типа этого: package { import flash.display.Bitmap; import flash.display.BitmapData; public class MyBitmap extends Bitmap { public static var bd: BitmapData; public function MyBitmap(bitmapData:BitmapData=null, pixelSnapping:String="auto", smoothing:Boolean=false) { super(bitmapData || bd, pixelSnapping, smoothing); bd = null; } } } MyBitmap.bd = (loader.content as Bitmap).bitmapData; loadGraphic(MyBitmap); Все таки лучше сделать два метода:
__________________
http://www.chessmax.ru |
|
|||||
|
[+1.3 18.03.10]
Регистрация: Mar 2010
Сообщений: 45
|
Спасибо, видимо придется дописывать свой loadGraphics чтобы принимал Bitmap. Но задача, по сути, получается неприступная... в каком же "виде" представлен Embed внутри плеера? )))
|
|
|||||
|
Цитата:
Вы просто хотите в рантайм создать еще один класс, но этим занимается компилятор, а не флешка, конечно можно запариться, но стоит ли овчинка выделки?
__________________
http://www.chessmax.ru |
|
|||||
|
[+1.3 18.03.10]
Регистрация: Mar 2010
Сообщений: 45
|
Да-да, вот теперь я осознал свой "запар" )))
Спасибо за наводку, чтение про BitmapAsset http://help.adobe.com/ru_RU/FlashPla...tmapAsset.html действительно многое расставило на свои места. Последний раз редактировалось Alex_YAROST_22; 02.11.2011 в 11:53. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|