>Art Alpha Gamma Stuff

Art Alpha Gamma Stuff

Name

Art Alpha Gamma Stuff -- Gamma-correct your image data.

Synopsis



struct      ArtAlphaGamma;
ArtAlphaGamma* art_alphagamma_new           (double gamma);
void        art_alphagamma_free             (ArtAlphaGamma *alphagamma);

Description

Details

struct ArtAlphaGamma

struct ArtAlphaGamma {
  /*< private >*/
  double gamma;
  int invtable_size;
  int table[256];
  art_u8 invtable[1];
};


art_alphagamma_new ()

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.


art_alphagamma_free ()

void        art_alphagamma_free             (ArtAlphaGamma *alphagamma);

Frees the ArtAlphaGamma.

alphagamma : An ArtAlphaGamma.