Как загрузить растровый файл в объект BitmapData?
во вспышке,BitmapData объект может использоваться для хранения растровых изображений в ОЗУ, вы можете позже нарисовать их в MovieClip с помощью beginBitmapFill() метод.
Как загрузить внешний файл изображения (.jpg) в объект BitmapData?
даже код AS3 был бы полезен.
5 ответов
AS3 код для загрузки PNG и "получить" его bitmapData
var bitmapData:BitmapData;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest("../lib/img.png"));
function onComplete (event:Event):void
{
bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
}
ссылка на первый пост хлопком.
на самом деле каждое изображение является растровым, так что все, что вам нужно сделать, это
bitmapData = event.target.content.bitmapData
вместо
bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
принимая из хлопка и будет, это отобразит растровое изображение после его загрузки:
import flash.display.Bitmap;
import flash.display.BitmapData;
var bitmapData:BitmapData;
var bmVis:Bitmap;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest("put url here"));
function onComplete (event:Event):void
{
trace("loaded!");
bitmapData = event.target.content.bitmapData;
bmVis = new Bitmap(bitmapData);
this.addChild(bmVis);
}
вы должны загрузить внешний файл (.jpg) в MovieClip и дождитесь его загрузки.
затем сделайте снимок MovieClip, который содержит внешний файл, в объект BitmapData.
myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)
myBitmap.draw( myMC)
посмотреть представляем API изображений во Flash 8.
GUI фаза:
Загрузить изображение в библиотеку (файл -> импорт -> библиотека).
В браузере библиотеки, щелкните правой кнопкой мыши и нажмите "Свойства", заметьте, что X на y пикселей.
Откройте вкладку "Дополнительно".
Выберите "export for Action Script". Экспорт в myImg
фаза Actionscript:
import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);