>
Art Alpha Gamma StuffThe libart library | |||
---|---|---|---|
<<< Previous Page | Home | Up | Next Page >>> |
struct ArtAlphaGamma; ArtAlphaGamma* art_alphagamma_new (double gamma); void art_alphagamma_free (ArtAlphaGamma *alphagamma); |
struct ArtAlphaGamma { /*< private >*/ double gamma; int invtable_size; int table[256]; art_u8 invtable[1]; }; |
ArtAlphaGamma* art_alphagamma_new (double gamma); |
Create a new ArtAlphaGamma for a specific value of gamma. When correctly implemented (which is generally not the case in libart), alpha compositing with an alphagamma parameter is equivalent to applying the gamma transformation to source images, doing the alpha compositing (in linear intensity space), then applying the inverse gamma transformation, bringing it back to a gamma-adjusted intensity space.
gamma : | Gamma value. |
Returns : | The newly created ArtAlphaGamma. |
void art_alphagamma_free (ArtAlphaGamma *alphagamma); |
Frees the ArtAlphaGamma.
alphagamma : | An ArtAlphaGamma. |