Flex сохранение холста и выпавшего изображения - PullRequest
0 голосов
/ 11 июня 2011

У меня есть изображение, загруженное из URL и добавленное в canvas как дочерний.Затем я перетаскиваю на него другое изображение, которое также использует преобразование в сенокулярную форму, чтобы изображение можно было преобразовать на холсте.Я кодировал таким образом, что дескрипторы преобразования отображаются только после того, как они упали на холсте.Изображение отображается правильно.Но я пытаюсь сохранить результирующее изображение (то есть основное изображение и упавшее изображение поверх него), я получаю только основное изображение, которое было загружено ранее.Упавшее изображение не отображается.

Ниже приведен код для handleDrop (), который запускается по событию dragDrop и подготавливает окончательное изображение.Что я делаю не так?

var dragInitiator:IUIComponent = dragEvent.dragInitiator;
                var dropTarget:IUIComponent = dragEvent.currentTarget as IUIComponent;

                var tool:TransformTool = new TransformTool(new ControlSetStandard());
                var items:String = dragEvent.dragSource.dataForFormat("items") as String;

                var img:Image = new Image();

                img.x=50;
                img.y=50;
                img.width=55;
                img.height=55;

                img.source=items.toString();
                var bitmap:Bitmap= Bitmap(img.content);


                var tool:TransformTool = new TransformTool(new ControlSetStandard());   
                var component:UIComponent = new UIComponent( );
                tool.target = img;

                tool.x=myCanvas.x;
                tool.y=myCanvas.y;



                addElement(component);

                myCanvas.addChild(img);
                img.z=myCanvas.z+1;
                component.addChild(tool);
                original=new BitmapData(bmd.width,bmd.height,true,0x000000FF);
                original.draw(myCanvas);

1 Ответ

1 голос
/ 11 июня 2011

То, что вы добавили изображение на холст, еще не означает, что оно уже нарисовано.Либо прослушивайте событие updateComplete на изображении, либо выполните callLater для функции, которая затем рисует растровое изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...