Clemens Eisserer wrote:
"Extra alpha" has the same behavior for all AlphaComposite instances.  In a
nutshell, the extra alpha value gets logically multiplied with the source
before the actual compositing operation.  The AlphaComposite docs explain
this process in great detail (look for the A[sub]ac factor):
http://java.sun.com/javase/6/docs/api/java/awt/AlphaComposite.html
Thanks for the explanation.
I guess the reason for the behaviour I see is a xserver-bug ... I am
not really sure what to do about it till now.

One thing that might explain the difference is whether or not the opaque destinations are considered premultiplied or not. I believe that we consider them non-premultiplied in which case the extraalpha is multiplied in, the result is stored to the destination, which involves dividing the alpha back out == no change. If the system treats the destinations as premultiplied then it multiplies the alpha into the color, then stores the multiplied (which looks faded) result into the destination...

                        ...jim

Reply via email to