fonction HT_ComputeRGBGammaTable (winddi.h)
La fonction HT_ComputeRGBGammaTable permet à GDI de calculer les intensités rouges, vertes et bleues de l’appareil en fonction des nombres gamma.
Syntaxe
LONG HT_ComputeRGBGammaTable(
[in] USHORT GammaTableEntries,
[in] USHORT GammaTableType,
[in] USHORT RedGamma,
[in] USHORT GreenGamma,
[in] USHORT BlueGamma,
[out] LPBYTE pGammaTable
);
Paramètres
[in] GammaTableEntries
Spécifie le nombre total d’étapes dans le tableau pour chacune des intensités rouge, verte et bleue. Cette valeur doit être supérieure à 1 et inférieure ou égale à 256 (autrement dit, 2 <= GammaTableEntries<= 256). Par exemple, une valeur de 256 signifie qu’il y a 256 entrées rouges, 256 entrées vertes et 256 entrées bleues dans la table gamma.
[in] GammaTableType
Spécifie le organization de pGammaTable. Les types de tables valides sont les suivants :
GammaTableType | Signification |
---|---|
0 | Les valeurs rouge, verte et bleue de la table gamma sont entrelacées. Chaque étape gamma est de 3 octets ; 1 octet chacun pour le rouge, le vert et le bleu. |
1 | Les tables rouge, verte et bleue sont emballées séparément; autrement dit, la table rouge entière est suivie de la table verte entière, qui est suivie de la table bleue entière. Les entrées individuelles sont de 1 octet chacune, ce qui fait de chaque sous-tableau un total d’octets GammaTableEntries . |
[in] RedGamma
Spécifie la valeur gamma rouge. Cette valeur USHORT est interprétée comme un nombre réel dont les quatre chiffres les moins significatifs se trouvent à droite de la virgule décimale (implicite). Par exemple, une valeur gamma de 10000 représente le nombre réel 1.0000 et 12345 représente 1.2345. La valeur gamma minimale autorisée est 0,0000 et la valeur maximale autorisée est 6,5535.
[in] GreenGamma
Spécifie la valeur gamma verte. Cette valeur USHORT est interprétée comme un nombre réel dont les quatre chiffres les moins significatifs se trouvent à droite de la virgule décimale (implicite). Par exemple, une valeur gamma de 10000 représente le nombre réel 1.0000 et 12345 représente 1.2345. La valeur gamma minimale autorisée est 0,0000 et la valeur maximale autorisée est 6,5535.
[in] BlueGamma
Spécifie la valeur gamma bleue. Cette valeur USHORT est interprétée comme un nombre réel dont les quatre chiffres les moins significatifs se trouvent à droite de la virgule décimale (implicite). Par exemple, une valeur gamma de 10000 représente le nombre réel 1.0000 et 12345 représente 1.2345. La valeur gamma minimale autorisée est 0,0000 et la valeur maximale autorisée est 6,5535.
[out] pGammaTable
Pointeur vers le tableau d’octets dans lequel les intensités rouge, verte et bleue de la table gamma seront écrites. La table retournée est organisée comme spécifié par le paramètre GammaTableType .
Valeur retournée
La valeur de retour est le nombre d’entrées gamma écrites dans pGammaTable ; en cas de réussite, cette valeur est égale à GammaTableEntries. Si GammaTableEntries est inférieur à 2 ou supérieur à 256, la valeur de retour est 0.
Les intensités rouge, verte et bleue retournées dans la plage pGammaTable comprise entre 0 et 255.
Remarques
Les routines de service en demi-teinte GDI utilisent une palette spéciale pour effectuer la demi-tonalité. Si l’appareil sélectionne une palette 8 bits par pixel à partir d’un pool de couleurs d’appareil 24 bits pour une surface de type 16 bits ou 24 bits, GDI suppose des étapes de couleur rouge, verte et bleue ; chacun a une luminosité égale.
GDI fournit ce service afin que le pilote puisse interroger la palette de demi-teintes 8 bits par pixel utilisée par GDI ou calculer les intensités de couleur RVB corrigées et égalisées gamma pour l’appareil.
Configuration requise
Client minimal pris en charge | Disponible dans Windows 2000 et versions ultérieures des systèmes d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | winddi.h (inclure Winddi.h) |
Bibliothèque | Win32k.lib |
DLL | Win32k.sys |