Provided by: allegro5-doc_5.2.8.0+dfsg-1_all bug

NAME

       al_premul_rgba - Allegro 5 API

SYNOPSIS

              #include <allegro5/allegro.h>

              ALLEGRO_COLOR al_premul_rgba(
                 unsigned char r, unsigned char g, unsigned char b, unsigned char a)

DESCRIPTION

       This is a shortcut for al_map_rgba(3alleg5)(r * a / 255, g * a / 255, b * a / 255, a).

       By  default  Allegro  uses  pre-multiplied  alpha  for transparent blending of bitmaps and
       primitives (see al_load_bitmap_flags(3alleg5) for a discussion  of  that  feature).   This
       means  that  if  you  want  to  tint  a  bitmap or primitive to be transparent you need to
       multiply the color components by the alpha components when you pass them to this function.
       For example:

              int r = 255;
              int g = 0;
              int b = 0;
              int a = 127;
              ALLEGRO_COLOR c = al_premul_rgba(r, g, b, a);
              /* Draw the bitmap tinted red and half-transparent. */
              al_draw_tinted_bitmap(bmp, c, 0, 0, 0);

       This function can be called before Allegro is initialized.

SINCE

       5.1.12

SEE ALSO

       al_map_rgba(3alleg5), al_premul_rgba_f(3alleg5)