var myFile:File = new File("./test.jpg");
var myFileStream1:FileStream = new FileStream();
myFileStream1.open(myFile, FileMode.READ);
var byte:ByteArray = new ByteArray();
myFileStream1.readBytes(byte,0,byte.bytesAvailable);
myFileStream1.close();
现在如何将字节变量添加到画布?例如 var canvas:Canvas = new Canvas(); canvas.addChild(字节); 是否可以将 ByteArray 添加到画布上?
我在没有图像控制的情况下解决了这个问题,我使用了解码器概念。如下: 成功了。
loader.loadBytes(eizo.idolImage);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
function (e:Event):void {
var bmpData:BitmapData = new BitmapData(loader.width, loader.height);
bmpData.draw(loader);
var ui:UIComponent = new UIComponent();
ui.addChild(new Bitmap(bmpData));
canvas0.addChild(ui);
}
);
不,你不能。这是因为
ByteArray
本身无法显示,因为 Flash Player 不知道它是什么。
在您的情况下,您将在
Canvas
上显示“test.jpg”图像,对吗?您只需将 Image
控件的 source
属性设置为加载的 ByteArray
对象并将其添加到 Canvas
即可。请参阅 http://livedocs.adobe.com/flex/3/langref/mx/controls/Image.html