Value | Meaning |
---|---|
B8G8R8A8_PREMULTIPLIED0 | 4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value. |
A8R8G8B8_PREMULTIPLIED1 | 4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value. |
R8G8B8A8_PREMULTIPLIED2 | 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. |
N_FORMATS9 | The number of formats. This value will change as more formats get added, so do not rely on its concrete integer. |
GdkMemoryFormat describes a format that bytes can have in memory.
It describes formats by listing the contents of the memory passed to it. So GDK_MEMORY_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_FORMAT_ARGB32 is represented by different GdkMemoryFormats on architectures with different endiannesses.
Its naming is modelled after VkFormat (see https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VkFormat
for details).