J'aimerais savoir ce que signifie PorterDuff.Mode dans les graphiques Android.
Je sais que c'est un mode de transfert .
Je sais aussi qu'il a des attributs tels que DST_IN, Multiply etc.
J'aimerais savoir ce que signifie PorterDuff.Mode dans les graphiques Android.
Je sais que c'est un mode de transfert .
Je sais aussi qu'il a des attributs tels que DST_IN, Multiply etc.
Réponses:
Voici un excellent article avec des illustrations d'un ingénieur Google:
http://ssp.impulsetrain.com/porterduff.html
PorterDuff est décrit comme un moyen de combiner des images comme s'il s'agissait de "morceaux de carton de forme irrégulière" superposés les uns sur les autres, ainsi que comme un schéma pour mélanger les parties qui se chevauchent.
La manière Android par défaut de composer des images est PorterDuff.Mode.SRC_OVER , ce qui équivaut à dessiner l'image / la couleur source sur l'image cible. En d'autres termes, il fait ce que vous attendez et dessine l'image source (celle que vous dessinez) au-dessus de l'image de destination (le canevas) avec l'image de destination visible jusqu'au degré défini par l'alpha de l'image source.
Vous pouvez utiliser la clé ci-dessous pour comprendre l'algèbre que la documentation Android utilise pour décrire les autres modes (voir l'article pour une description plus complète avec des termes similaires).
Où alpha est une valeur [0..1]
et la couleur est remplacée une fois par canal (utilisez donc la formule une fois pour chacun des rouges, verts et bleus)
Les valeurs résultantes sont spécifiées sous forme de paire entre accolades comme suit.
[<alpha-value>,<color-value>]
Où alpha-value
et color-value
sont des formules pour générer respectivement le canal alpha résultant et chaque canal de couleur.
Il définit comment composer des images en fonction de la valeur alpha. Pour en savoir plus, cliquez ici http://en.wikipedia.org/wiki/Alpha_compositing