我想将图像放置在位图的柔性画布组件中。我能够达到我没有收到错误的地步,但是没有图像显示出来,我保存为jpg的图像是空白的。我想我没有正确设置位图数据,但无法弄清楚我做错了什么。将具有图像的柔性组件转换为位图
这里是我将其转换为位图的代码:
var imageSnap:ImageSnapshot = ImageSnapshot.captureImage(_renderPop);
var imageByteArray:ByteArray = imageSnap.data as ByteArray;
var bLoader:Loader = new Loader();
bLoader.loadBytes(imageByteArray);
var bmd:BitmapData = new BitmapData(500,500);
bmd.draw(bLoader);
var imgTest:Image = new Image();
imgTest.source = bmd;
_renderPop.renderCanvas.addChild(imgTest);
var fileRef:FileReference = new FileReference();
fileRef.save(bLoader, 'testImage.jpg');
_renderPop.renderCanvas是我在哪里放置图像。有人看到有什么不对吗?
好的,谢谢,这样似乎让我有点进一步。但是现在我得到一个无效的bitmapdata错误。你有没有看到我可能需要做的其他事情才能正确捕获位图数据? – pfunc 2010-07-28 19:43:41
只是为了澄清,我正在该线路上无效的BitmapData错误: VAR imageSnap:将ImageSnapshot = ImageSnapshot.captureImage(_renderPop.renderCanvas,150); 如果我只是使用_renderPop,那么我不会得到一个错误,但我得到一个空白的bitmapImage。 _renderPop.renderCanvas是一个mx:Canvas对象。我可以追查它,它在那里。 – pfunc 2010-07-28 20:20:43
你使用的ImageSnapshot类是什么?不要使用该组件,请尝试手动执行此操作...... InsideRIA上有一篇非常有趣的博客文章,用于完成此操作(还有更多!) http://insideria.com/2008/03/image-manipulation-in -flex.html 这有帮助吗? – infomaniac 2010-07-28 20:30:11