Как загрузить файл растрового изображения в объект BitmapData? - PullRequest
16 голосов
/ 31 марта 2009

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

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

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

Ответы [ 5 ]

42 голосов
/ 01 апреля 2009

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;
}
9 голосов
/ 17 августа 2011

Ссылаясь на первый пост по хлопку.

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

bitmapData = event.target.content.bitmapData  

вместо

bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
6 голосов
/ 06 февраля 2012

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

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);
}
5 голосов
/ 31 марта 2009

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

Затем сделайте снимок мувиклипа, содержащего внешний файл, в объект BitmapData.

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

myBitmap.draw( myMC)

См. Представление API изображения в Flash 8.

1 голос
/ 08 ноября 2009

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

Фаза действия сценария:

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