2010-03-29 7 views
0

J'utilise des classes bitmapData et bitmap pour afficher un curseur de souris sur l'écran d'affichage. Le bitmapData est constitué d'une zone dont les couleurs doivent être inversées en fonction de la couleur d'arrière-plan. C'est une chose très simple qui pourrait être observée avec le curseur de texte (la ligne verticale avec deux petits horizontaux en haut et en bas), lorsqu'il est déplacé au-dessus de la zone de texte. Je veux être capable de faire la même chose avec les pixels de mon bitmapData, y a-t-il un moyen de trouver la couleur d'arrière-plan efficacement et d'inverser les valeurs de couleur?Gestion des pixels inversés dans les classes bitmapData et bitmap dans as3

Dans ce processus, je vais redessiner l'ensemble des pixels, existe-t-il un autre moyen efficace de le faire?

Répondre

2

Vous pouvez dessiner votre curseur à l'aide BlendMode.INVERT

http://livedocs.adobe.com/flex/3/langref/flash/display/BitmapData.html#draw()

ou simplement mettre votre objet d'affichage du curseur sur votre bitmap et réglez est blendMode INVERT.

+0

merci sharvey pour l'idée. Je pense que j'ai encore un obstacle qui est de déterminer efficacement la zone que je veux inverser, puisque le bitmap du curseur entier n'a pas besoin d'être inversé. mais de toute façon je vais comprendre le reste. – intoTHEwild

+0

vous devriez accepter quelques réponses parfois. – sharvey

+0

idéalement l'idée de sharvey devrait fonctionner, mais dans mon cas c'est un peu compliqué de le faire fonctionner. – intoTHEwild

Questions connexes