Flash Rendering Bug
♥0 |
Line 62 |
Modified 2010-08-18 00:44:07 |
MIT License
archived:2017-03-20 16:56:30
ActionScript3 source code
/**
* Copyright Abarrow ( http://wonderfl.net/user/Abarrow )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/a2Md
*/
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
import flash.geom.Point;
import flash.geom.Rectangle;
import flash.net.URLRequest;
import flash.system.LoaderContext;
import flash.text.TextField;
public class PixelBitmap extends Sprite {
private const _url:String = "http://i.imgur.com/8sMZH.jpg";
private var _loader:Loader = new Loader();
public function PixelBitmap()
{
configureAssets();
}
private function configureAssets():void
{
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
var request:URLRequest = new URLRequest(_url);
_loader.x = 0;
_loader.y = 0;
_loader.load(request, new LoaderContext(true));
_loader.name = 'test';
}
private function completeHandler(event:Event):void
{
var image:Bitmap = Bitmap(LoaderInfo(event.target).content);
var bit:BitmapData=image.bitmapData;
var ba:Sprite=new Sprite();
for(var n:int=0;n<bit.height;n++){
var str:int=0;
var len:int=0;
var col:int=0;
for(var en:int=0;en<bit.width;en++){
if(len==0){
len=1;
str=en;
col=bit.getPixel(en,n);
}else{
if(col==bit.getPixel(en,n)){
len++;
}else{
ba.graphics.lineStyle(1,col,1,false,'normal','square');
ba.graphics.moveTo(str,n);
ba.graphics.lineTo(str+len,n);
len=0;
str=0;
col=0;
}
}
}
}
ba.y=image.height-100;
var ra:Sprite=new Sprite();
ra.addChild(ba);
ra.addChild(image);
addChild(ra);
ra.y=-ra.height/2+stage.stageHeight/2-50;
}
}
}