Package: cairo

CEnum cairo-format-t

Details

The cairo-format-t enumeration is used to identify the memory format of image data.

New entries may be added in future versions.
(defcenum cairo-format-t
  (:invalid -1)
  (:argb32 0)
  (:rgb24 1)
  (:a8 2)
  (:a1 3)
  (:rgb16-565 4)
  (:rgb30 5))  
:invalid
No such format exists or is supported.
:argb32
Each pixel is a 32-bit quantity, with alpha in the upper 8 bits, then red, then green, then blue. The 32-bit quantities are stored native-endian. Pre-multiplied alpha is used. That is, 50 % transparent red is 0x80800000, not 0x80ff0000.
:rgb24
Each pixel is a 32-bit quantity, with the upper 8 bits unused. Red, Green, and Blue are stored in the remaining 24 bits in that order.
:a8
Each pixel is a 8-bit quantity holding an alpha value.
:a1
Each pixel is a 1-bit quantity holding an alpha value. Pixels are packed together into 32-bit quantities. The ordering of the bits matches the endianess of the platform. On a big-endian machine, the first pixel is in the uppermost bit, on a little-endian machine the first pixel is in the least-significant bit.
:rgb16-565
Each pixel is a 16-bit quantity with red in the upper 5 bits, then green in the middle 6 bits, and blue in the lower 5 bits.
:rgb30
Like :rgb24 but with 10 bpc.
 

See also

2020-12-16