Serwis Edukacyjny Nauczycieli w I-LO w Tarnowie ![]() Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy
Wałaszek |
©2023 mgr Jerzy Wałaszek
|
SDL_PixelFormatEnum
SPIS TREŚCI |
Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.
Enumeracja formatów pikseli,
Makra formatów pikseli:
SDL_PIXELTYPE(format) | typ formatu pikseli, zobacz na Uwagi. |
SDL_PIXELORDER(format) | uporządkowanie kanałów lub bitów w formacie pikseli, zobacz na Uwagi. |
SDL_PIXELLAYOUT(format) | wzór bitowy kanałów formatu pikseli, zobacz na Uwagi. |
SDL_BITSPERPIXEL(format) | liczba bitów informacji koloru w formacie pikseli. |
SDL_BYTESPERPIXEL(format) | liczba bajtów na piksel. |
SDL_ISPIXELFORMAT_INDEXED(format) | prawda dla formatów pikseli z paletą |
SDL_ISPIXELFORMAT_ALPHA(format) | prawda dla formatów pikseli z kanałem alfa. |
SDL_ISPIXELFORMAT_FOURCC(format) | prawda dla formatów pikseli reprezentujących szczególne formaty, na przykład formaty YUV. |
Wartości formatów pikseli:
SDL_PIXELFORMAT_UNKNOWN | |
SDL_PIXELFORMAT_INDEX1LSB | |
SDL_PIXELFORMAT_INDEX1MSB | |
SDL_PIXELFORMAT_INDEX4LSB | |
SDL_PIXELFORMAT_INDEX4MSB | |
SDL_PIXELFORMAT_INDEX8 | |
SDL_PIXELFORMAT_RGB332 | |
SDL_PIXELFORMAT_RGB444 | |
SDL_PIXELFORMAT_RGB555 | |
SDL_PIXELFORMAT_BGR555 | |
SDL_PIXELFORMAT_ARGB4444 | |
SDL_PIXELFORMAT_RGBA4444 | |
SDL_PIXELFORMAT_ABGR4444 | |
SDL_PIXELFORMAT_BGRA4444 | |
SDL_PIXELFORMAT_ARGB1555 | |
SDL_PIXELFORMAT_RGBA5551 | |
SDL_PIXELFORMAT_ABGR1555 | |
SDL_PIXELFORMAT_BGRA5551 | |
SDL_PIXELFORMAT_RGB565 | |
SDL_PIXELFORMAT_BGR565 | |
SDL_PIXELFORMAT_RGB24 | |
SDL_PIXELFORMAT_BGR24 | |
SDL_PIXELFORMAT_RGB888 | |
SDL_PIXELFORMAT_RGBX8888 | |
SDL_PIXELFORMAT_BGR888 | |
SDL_PIXELFORMAT_BGRX8888 | |
SDL_PIXELFORMAT_ARGB8888 | |
SDL_PIXELFORMAT_RGBA8888 | |
SDL_PIXELFORMAT_ABGR8888 | |
SDL_PIXELFORMAT_BGRA8888 | |
SDL_PIXELFORMAT_ARGB2101010 | |
SDL_PIXELFORMAT_RGBA32 | alias (nazwa zastępcza) dla ciągu bajtów RGBA danych koloru na bieżącej platformie (>= SDL 2.0.5). |
SDL_PIXELFORMAT_ARGB32 | alias dla ciągu bajtów ARGB danych koloru na bieżącej platformie (>= SDL 2.0.5). |
SDL_PIXELFORMAT_BGRA32 | alias dla ciągu bajtów BGRA danych koloru na bieżącej platformie (>= SDL 2.0.5). |
SDL_PIXELFORMAT_ABGR32 | alias dla ciągu bajtów ABGR danych koloru na bieżącej platformie (>= SDL 2.0.5). |
SDL_PIXELFORMAT_YV12 | tryb planarny: Y + V + U (3 płaszczyzny). |
SDL_PIXELFORMAT_IYUV | tryb planarny: Y + U + V (3 płaszczyzny). |
SDL_PIXELFORMAT_YUY2 | tryb spakowany: Y0+U0+Y1+V0 (1 płaszczyzna). |
SDL_PIXELFORMAT_UYVY | tryb spakowany: U0+Y0+V0+Y1 (1 płaszczyzna). |
SDL_PIXELFORMAT_YVYU | tryb spakowany: Y0+V0+Y1+U0 (1 płaszczyzna). |
SDL_PIXELFORMAT_NV12 | tryb planarny: Y + U/V z przeplotem (2 płaszczyzny) (>= SDL 2.0.4) |
SDL_PIXELFORMAT_NV21 | tryb planarny: Y + V/U z przeplotem (2 płaszczyzny) (>= SDL 2.0.4) |
SDL_PIXELTYPE_UNKNOWN |
SDL_PIXELTYPE_INDEX1 |
SDL_PIXELTYPE_INDEX4 |
SDL_PIXELTYPE_INDEX8 |
SDL_PIXELTYPE_PACKED8 |
SDL_PIXELTYPE_PACKED16 |
SDL_PIXELTYPE_PACKED32 |
SDL_PIXELTYPE_ARRAYU8 |
SDL_PIXELTYPE_ARRAYU16 |
SDL_PIXELTYPE_ARRAYU32 |
SDL_PIXELTYPE_ARRAYF16 |
SDL_PIXELTYPE_ARRAYF32 |
W zależności od typu pikseli istnieją trzy różne rodzaje uporządkowań – bitmapowe, spakowane lub ciągowe.
Kolejność bitów w pikselu (najstarszy bit → najmłodszy bit) |
SDL_BITMAPORDER_NONE |
SDL_BITMAPORDER_4321 |
SDL_BITMAPORDER_1234 |
kolejność spakowanych składników (najstarszy bit → najmłodszy bit) |
SDL_PACKEDORDER_NONE |
SDL_PACKEDORDER_XRGB |
SDL_PACKEDORDER_RGBX |
SDL_PACKEDORDER_ARGB |
SDL_PACKEDORDER_RGBA |
SDL_PACKEDORDER_XBGR |
SDL_PACKEDORDER_BGRX |
SDL_PACKEDORDER_ABGR |
SDL_PACKEDORDER_BGRA |
kolejność składników ciągu (najmłodszy bit → najstarszy bit) |
SDL_ARRAYORDER_NONE |
SDL_ARRAYORDER_RGB |
SDL_ARRAYORDER_RGBA |
SDL_ARRAYORDER_ARGB |
SDL_ARRAYORDER_BGR |
SDL_ARRAYORDER_BGRA |
SDL_ARRAYORDER_ABGR |
Spakowane formaty pikseli posiadają jeden z następujących układów kanałów:
SDL_PACKEDLAYOUT_NONE |
SDL_PACKEDLAYOUT_332 |
SDL_PACKEDLAYOUT_4444 |
SDL_PACKEDLAYOUT_1555 |
SDL_PACKEDLAYOUT_5551 |
SDL_PACKEDLAYOUT_565 |
SDL_PACKEDLAYOUT_8888 |
SDL_PACKEDLAYOUT_2101010 |
SDL_PACKEDLAYOUT_1010102 |
SDL_PIXELFORMAT_RGBA32 jest aliasem dla
SDL_PIXELFORMAT_RGBA8888 dla platform typu big endian
machines oraz dla SDL_PIXELFORMAT_ABGR8888 dla platform typu
little endian, zatem możesz używać ich do określania, że
twoje piksele są reprezentowane przez ciągi bajtowe RGBA,
jak SDL_PIXELFORMAT_RGB24 jest ciągiem bajtów RGB.
Jednakże, jako alias posiada identyczną wartość jak
aliasowany typ, zatem
SDL_GetPixelFormatName(SDL_PIXELFORMAT_RGBA32) zwróci nazwę
aliasowanego typu (np. "SDL_PIXELFORMAT_ABGR8888"), w
zależności od twojej platformy.
To samo dotyczy SDL_PIXELFORMAT_ARGB32, SDL_PIXELFORMAT_BGRA32 i SDL_PIXELFORMAT_ABGR32 (z tą jedyną różnicą, że są one oczywiście aliasami dla innych formatów pikseli). Aliasy SDL_PIXELFORMAT_*32 są dostępne od SDL 2.0.5.
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2023 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.