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