1
                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 添加到画布?

4

2 回答 2

1

我在没有图像控制的情况下解决了这个问题,我使用了解码器概念。下面是:它有效。

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);
    }
);
于 2009-09-07T01:00:29.150 回答
0

你不能。这是因为ByteArrayFlash Player 不知道它是什么而无法显示它自己。

在您的情况下,您将在 a 上显示“test.jpg”图像Canvas,对吗?您可以简单地将Image控件的source属性设置为加载的ByteArray对象并将其添加到Canvas. 看http://livedocs.adobe.com/flex/3/langref/mx/controls/Image.html

于 2009-09-07T00:13:20.617 回答