Как загрузить файл растрового изображения в объект BitmapData?

В Flash объект BitmapData может использоваться для хранения растровых изображений в ОЗУ, вы можете позже нарисовать их в MovieClip, используя метод beginBitmapFill().

Как вы загружаете внешний файл растрового изображения (.jpg) в объект BitmapData?

Даже код AS3 будет полезен.

Ответы

Ответ 1

AS3-код для загрузки PNG и "получения" его битмап-данных

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;
}

Ответ 2

Относится к первому сообщению хлопком.

На самом деле каждое изображение представляет собой растровое изображение, поэтому все, что вам нужно сделать, это

bitmapData = event.target.content.bitmapData  

вместо

bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;

Ответ 3

взяв из хлопка и воли, это отобразит растровое изображение после его загрузки:

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);
}

Ответ 4

Вы должны загрузить внешний файл (.jpg) в MovieClip и дождаться его загрузки.

Затем сделайте снимок MovieClip, который содержит внешний файл, в ваш объект BitmapData.

myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)

myBitmap.draw( myMC)

См. Знакомство с API-интерфейсом изображений во Flash 8.

Ответ 5

Фаза GUI:
Загрузите изображение в библиотеку (файл → import → library).
В браузере библиотеки щелкните правой кнопкой мыши и нажмите "Свойства", обратите внимание, что это X на Y пикселей.
Откройте вкладку "Дополнительно".
Выберите "export for Action Script". Экспорт как myImg

Этап действия:

import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);