GdkMemoryFormat

gdk.types.MemoryFormat describes formats that image data can have in memory.

It describes formats by listing the contents of the memory passed to it. So gdk.types.MemoryFormat.A8r8g8b8 will be 1 byte (8 bits) of alpha, followed by a byte each of red, green and blue. It is not endian-dependent, so cairo.types.Format.Argb32 is represented by different GdkMemoryFormats on architectures with different endiannesses.

Its naming is modelled after VkFormat

for details).

Values

ValueMeaning
B8g8r8a8Premultiplied0

4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value.

A8r8g8b8Premultiplied1

4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value.

R8g8b8a8Premultiplied2

4 bytes; for red, green, blue, alpha The color values are premultiplied with the alpha value.

B8g8r8a83

4 bytes; for blue, green, red, alpha.

A8r8g8b84

4 bytes; for alpha, red, green, blue.

R8g8b8a85

4 bytes; for red, green, blue, alpha.

A8b8g8r86

4 bytes; for alpha, blue, green, red.

R8g8b87

3 bytes; for red, green, blue. The data is opaque.

B8g8r88

3 bytes; for blue, green, red. The data is opaque.

R16g16b169

3 guint16 values; for red, green, blue.

R16g16b16a16Premultiplied10

4 guint16 values; for red, green, blue, alpha. The color values are premultiplied with the alpha value.

R16g16b16a1611

4 guint16 values; for red, green, blue, alpha.

R16g16b16Float12

3 half-float values; for red, green, blue. The data is opaque.

R16g16b16a16FloatPremultiplied13

4 half-float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value.

R16g16b16a16Float14

4 half-float values; for red, green, blue and alpha.

R32g32b32Float15

3 float values; for red, green, blue.

R32g32b32a32FloatPremultiplied16

4 float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value.

R32g32b32a32Float17

4 float values; for red, green, blue and alpha.

G8a8Premultiplied18

2 bytes; for grayscale, alpha. The color values are premultiplied with the alpha value.

G8a819

2 bytes; for grayscale, alpha.

G820

One byte; for grayscale. The data is opaque.

G16a16Premultiplied21

2 guint16 values; for grayscale, alpha. The color values are premultiplied with the alpha value.

G16a1622

2 guint16 values; for grayscale, alpha.

G1623

One guint16 value; for grayscale. The data is opaque.

A824

One byte; for alpha.

A1625

One guint16 value; for alpha.

A16Float26

One half-float value; for alpha.

A32Float27

One float value; for alpha.

A8b8g8r8Premultiplied28

4 bytes; for alpha, blue, green, red, The color values are premultiplied with the alpha value.

B8g8r8x829

4 bytes; for blue, green, red, unused.

X8r8g8b830

4 bytes; for unused, red, green, blue.

R8g8b8x831

4 bytes; for red, green, blue, unused.

X8b8g8r832

4 bytes; for unused, blue, green, red.

NFormats33

The number of formats. This value will change as more formats get added, so do not rely on its concrete integer.