SharedObject に ByteArray 化した画像保存
couldn't build だけどきっとこんな感じ
♥0 |
Line 45 |
Modified 2010-12-10 15:33:20 |
MIT License
archived:2017-03-20 17:18:24
ActionScript3 source code
/**
* Copyright shihu ( http://wonderfl.net/user/shihu )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/gxxR
*/
package {
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Rectangle;
import flash.net.SharedObject;
import flash.net.URLRequest;
import flash.utils.ByteArray;
public class FlashTest extends Sprite {
private var _so:SharedObject;
public function FlashTest() {
_so = SharedObject.getLocal( "aa" );
if ( _so.data.ba ) {
try {
var ba:ByteArray = _so.data.ba;
var bmd:BitmapData = new BitmapData( 500, 200, false );
bmd.setPixels( new Rectangle( 0, 0, 500, 200 ), ba );
addChild( new Bitmap( bmd ) );
trace( "from so" );
} catch ( error:Error ) {
_so.clear();
trace( "error" );
}
} else {
trace( "load" );
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, _onLoaderComplete );
loader.load( new URLRequest( "http://gyazo.com/66d0504a3ca02c61e15533bcbedb8ef4.png ) );
}
}
private function _onLoaderComplete( event:Event ):void {
var loader:Loader = LoaderInfo( event.target ).loader;
var bmd:BitmapData = new BitmapData( 500, 200, false );
bmd.draw( loader.content );
var ba:ByteArray = bmd.getPixels( new Rectangle( 0, 0, 500, 200 ) );
_so.data.ba = ba;
_so.flush();
addChild( loader );
}
}
}