Вы не можете сделать это с Flex / Flash, но вы можете сделать снимок и сохранить его в файловой системе, импортировать это изображение в фотошоп и т. Д. Вот пример:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.graphics.codec.PNGEncoder;
import flash.display.BitmapData;
protected function saveAsPNG(target:Sprite, path:String):void
{
var bitmapData:BitmapData = new BitmapData(target.width, target.height);
bitmapData.draw(target);
var image:PNGEncoder = new PNGEncoder();
var byteArray:ByteArray = image.encode(bitmapData);
var file:FileReference = new FileReference();
file.save(byteArray, path);
}
]]>
</mx:Script>
<mx:Panel width="100%" height="100%">
<mx:HBox width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
<mx:Panel width="50%" height="50%"/>
<mx:Panel width="50%" height="50%"/>
</mx:HBox>
</mx:Panel>
<mx:Button label="Save As.." click="saveAsPNG(this, 'MyImage.png')"/>
</mx:Application>
Если вы используете AIR, вы можете сохранить растровые изображения в буфере обмена . Проверьте это расширенное приложение AIR Clipboard .
Вы также можете сделать следующее:
(не уверен, если это возможно)
Похоже, вы даже не можете копировать изображения в буфер обмена в JavaScript. Если вы на Mac, вы можете использовать это: Command+Ctrl+Shift+4
.
Надеюсь, это поможет,
Lance