I'll throw my opinion into the mix FWIW.  I disagree with Raphael that RGB
values for alpha=0 should be undefined.  If alpha is subsequently adjusted,
then the original RGB values must be preserved whenever possible so that the
reduced transparency can be effected and produce the correct result.
Therefore, in concept I don't completely agree with Rafael's comment that
RBG values are undefined when alpha=0.  Rather, the RGB values should be
treated whenever possible to yield the proper result as if taking the limit
as alpha approaches 0, rather than strictly stating that RGB values are
undefined when alpha=0.  This would provide the most useful and expected
results, and greatest functionality for the user.

I am coming in late on this thread, and may have missed something, so please
forgive me if my opinions are off the mark for some reason.


----- Original Message ----- 
From: "RaphaŽl Quinet" <[EMAIL PROTECTED]>
Sent: Tuesday, December 16, 2003 10:59 AM
Subject: Re: [Gimp-developer] Handling of transparent pixels

On Tue, 16 Dec 2003 10:31:29 -0200, "Joao S. O. Bueno" <[EMAIL PROTECTED]>
> You could maybe just add (or ask someone to add) a "zero-out
> transparent pixels" on the layers menu.

Sigh!  It is a bit frustrating for me to see that you haven't
understood what the main problem is (from my point of view).  Maybe
this thread has been going on for too long...  Anyway, one more try:

I do not care (yet) about clearing the transparent pixels, destroying
color data, using pre-multiplied alpha or all the (un)related things
that were mentioned in recent messages.

I care about the message that we are giving to the user about the
alpha channel: the correct way to present the alpha channel is that a
pixel with alpha=0 has an undefined color.  The GIMP should be free to
keep the RGB data of transparent pixels intact or to destroy it if
necessary.  Hackers may be aware of whether the GIMP will keep the RGB
data or not for such and such operation, but we should avoid adding
features that explicitely require one or the other to happen.

I think that Adam has posted a nice explanation, so I will not repeat
it.  Daniel Rogers had also some positive comments in Bugzilla.

Basically, the model that we should promote is:
- layer mask    => hiding mechanism, reversible
- alpha channel => pixels that are cleared have undefined RGB data,
                   not reversible (except for undo)

Breaking this model should be avoided, except in very special cases
(i.e. obscure features for hackers).

Gimp-developer mailing list

Gimp-developer mailing list

Reply via email to