2010-04-24 8 views
0

Je construis une application flash qui tire des images de flickr et supprime le fond blanc Je suis dong ce seuil d'utilisation et je reçois un résultat vraiment en lambeaux est-il un moyen d'obtenir un meilleur et plus lisse Clé de couleur? grâce photoNumber = Math.floor(Math.random() * (photos.length));Flash as3 lisse seuil

loader.load(new URLRequest(photos[photoNumber].path)); 
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE,draw); 
    trace ("trying to load photo " + photoNumber); 

    function draw(e:Event) { 

    trace ("show photo " + photoNumber) 

var W:int=e.target.content.width; 
var H:int=e.target.content.height; 

bitmapdata=new BitmapData(W,H); 
bitmap=new Bitmap(bitmapdata); 
bitmapdata.draw(e.target.content); 

    var threshold:uint = 0xF9F8F800; 
    var color:uint = 0x00000000; 
    var maskColor:uint = 0x00FF0000; 

bitmapdata.threshold(bitmapdata,new Rectangle(0,0,W,H),new Point(0,0),">", threshold, color, maskColor, true); 

    bitmap.smoothing = true; 
    //bitmap.scaleX = bitmap.scaleY = 0.99; // <---- 
    imgHolder.addChild(bitmap); 

    } 

}

Répondre

2

Votre masque et vos seuils ne sont pas corrects. Je pense que vous essayez de faire quelque chose comme ceci:

var threshold:uint = 0x00F9F8F8; 
var maskColor:uint = 0x00FFFFFF; 

L'alpha est les deux premiers caractères hexadécimaux.