funzione HT_ComputeRGBGammaTable (winddi.h)
La funzione HT_ComputeRGBGammaTable causa il calcolo dell'intensità del dispositivo rosso, verde e blu in base ai numeri gamma.
Sintassi
LONG HT_ComputeRGBGammaTable(
[in] USHORT GammaTableEntries,
[in] USHORT GammaTableType,
[in] USHORT RedGamma,
[in] USHORT GreenGamma,
[in] USHORT BlueGamma,
[out] LPBYTE pGammaTable
);
Parametri
[in] GammaTableEntries
Specifica il numero totale di passaggi nella tabella per ogni intensità rossa, verde e blu. Questo valore deve essere maggiore di 1 e minore o uguale a 256 , ovvero 2 <= GammaTableEntries<= 256. Ad esempio, un valore pari a 256 indica che sono presenti 256 voci rosse, 256 voci verdi e 256 voci blu nella tabella gamma.
[in] GammaTableType
Specifica l'organizzazione di pGammaTable. I tipi di tabella validi sono:
GammaTableType | Significato |
---|---|
0 | I valori rossi, verdi e blu della tabella gamma vengono interleavedati insieme. Ogni passaggio gamma è 3 byte; 1 byte per rosso, verde e blu. |
1 | Le tabelle rosse, verdi e blu sono racchiuse separatamente; ovvero, l'intera tabella rossa è seguita dall'intera tabella verde, seguita dall'intera tabella blu. Le singole voci sono 1 byte, rendendo ogni sottotable un totale di byte gammaTableEntries in lunghezza. |
[in] RedGamma
Specifica il valore gamma rosso. Questo valore USHORT viene interpretato come un numero reale i cui quattro cifre meno significative sono a destra del decimale (implicito). Ad esempio, un valore gamma pari a 10000 rappresenta il numero reale 1.0000 e 12345 rappresenta 1,2345. Il valore gamma minimo consentito è 0,0000 e il valore massimo consentito è 6,5535.
[in] GreenGamma
Specifica il valore gamma verde. Questo valore USHORT viene interpretato come un numero reale i cui quattro cifre meno significative sono a destra del decimale (implicito). Ad esempio, un valore gamma pari a 10000 rappresenta il numero reale 1.0000 e 12345 rappresenta 1,2345. Il valore gamma minimo consentito è 0,0000 e il valore massimo consentito è 6,5535.
[in] BlueGamma
Specifica il valore gamma blu. Questo valore USHORT viene interpretato come un numero reale i cui quattro cifre meno significative sono a destra del decimale (implicito). Ad esempio, un valore gamma pari a 10000 rappresenta il numero reale 1.0000 e 12345 rappresenta 1,2345. Il valore gamma minimo consentito è 0,0000 e il valore massimo consentito è 6,5535.
[out] pGammaTable
Puntatore alla matrice di byte in cui verranno scritte le intensità rosse, verdi e blu della tabella gamma. La tabella restituita è organizzata come specificato dal parametro GammaTableType .
Valore restituito
Il valore restituito è il numero di voci gamma scritte in pGammaTable; in caso di esito positivo, questo valore è uguale a GammaTableEntries. Se GammaTableEntries è minore di 2 o maggiore di 256, il valore restituito è 0.
L'intensità rossa, verde e blu restituita in pGammaTable è compreso tra 0 e 255.
Commenti
Le routine di servizio halftone GDI usano una tavolozza speciale per eseguire il halftoning. Se il dispositivo seleziona una tavolozza a 8 bit per pixel da un pool di colori del dispositivo a 24 bit per una superficie di tipo a 16 bit o a 24 bit, GDI presuppone passaggi di colore rosso, verde e blu; ognuno ha una luminosità uguale.
GDI fornisce questo servizio in modo che il driver possa eseguire una query sulla tavolozza a mezzotona a 8 bit usata da GDI o gamma di calcolo corretta e uguale a intensità di colore RGB per il dispositivo.
Requisiti
Client minimo supportato | Disponibile in Windows 2000 e versioni successive dei sistemi operativi Windows. |
Piattaforma di destinazione | Universale |
Intestazione | winddi.h (include Winddi.h) |
Libreria | Win32k.lib |
DLL | Win32k.sys |