2010-08-06 6 views

Répondre

1

Vous pouvez le faire facilement avec la méthode threshold de la classe BitmapaData.

Fondamentalement, faites une copie de l'image. Ensuite, faites en sorte que chaque pixel qui échoue au test de seuil soit totalement transparent. Le test dans ce cas pourrait être pixel != your shade of green.

Exemple de code:

var color:uint = 0xff22b14c; 
var bmd:BitmapData = new BitmapData(image.width,image.height,true); 
bmd.draw(image); 
bmd.threshold(bmd,new Rectangle(0,0,image.width,image.height),new Point(0,0),"!=",color,0,0xffffffff); 
addChild(new Bitmap(bmd)); 

Avec un peu plus de travail que vous pouvez isoler les gammes de couleurs, mais pour une couleur unie comme dans votre cas, cela devrait le faire.

Questions connexes