Actionscript 3.0, чтобы сделать воздушный снимок экрана на iDevice - PullRequest
0 голосов
/ 29 марта 2012

Я хочу знать, как сделать снимок экрана и сохранить его на iPad с помощью Actionscript 3, мой код работает как для Adobe Flash Player, так и для планшета Android.однако это не работает на iPad.Любое предложение?

/**
* ScreenCapture
* 
* This function take the abliity to print screen the stage and ready to output to the user to view
*
*/      
package actions{
    import flash.errors.IllegalOperationError;
    import flash.errors.MemoryError;
    import flash.net.FileReference;
    import flash.display.MovieClip;
    import flash.events.IOErrorEvent;
    import flash.display.BitmapData;
    import flash.utils.ByteArray;
    import flash.display.Sprite;

    import com.adobe.images.JPGEncoder;
    import utility.Base64;

    public class ScreenCapture extends Sprite{

        public function ScreenCapture() {
        }

        /**
        * saveImage
        * 
        * Seek into the container and find how many child is in the container
        *
        * @param    image   the movieclip about to be print screened
        * @param    imageName   the number of the image file
        */  
        public function saveImage(type:String, image:MovieClip, imageName:String) {
            //try {
                var jpgSource:BitmapData = new BitmapData( image.width, image.height );
                jpgSource.draw(image);
                var jpgEncoder:JPGEncoder = new JPGEncoder(85);
                var jpgStream:ByteArray = jpgEncoder.encode(jpgSource);
                if(type == 'fileSave'){
                    var file:FileReference = new FileReference();
                    //file.addEventListener( IOErrorEvent.IO_ERROR, ioErrorHandler );
                    file.save( jpgStream, imageName );
                }else if(type == 'fetchImg'){
                    return jpgStream;
                }
            //}
            /**catch( ioe:IllegalOperationError ) {
                trace("Illegal operation.");
            }
            catch( ae:ArgumentError ) {
                trace("Invalid argument.");
            }
            catch( me:MemoryError ) {
                trace("Insufficient memory.");
            }
            catch( error:Error ) {
                trace("Error trying to save image : " + imageName 
                      + " . Error : " + error);
            }*/
        }

        /**
        * Handles IOErrors.
        */
        /**private function ioErrorHandler( event:IOErrorEvent ) : void {
            trace("ioErrorHandler: " + event);
        }*/

    }

}

любая помощь или предложение приветствуется.Спасибо

1 Ответ

0 голосов
/ 03 мая 2012

Решение найдено CameraRoll - это класс, который мне нужен!

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