Condividi tramite


Funzione SetDeviceGammaRamp (wingdi.h)

La funzione SetDeviceGammaRamp imposta la rampa gamma su schede di visualizzazione a colori diretti con driver che supportano rampe gamma scaricabili nell'hardware.

Importante

È consigliabile non usare questa API. L'uso di questa API è soggetto a limitazioni principali:

  • SetDeviceGammaRamp implementa l'euristica per verificare se una rampa fornita comporterà una schermata non leggibile. Se una rampa viola tali euristici, la funzione ha esito negativo in modo silenzioso ,ovvero restituisce TRUE, ma non imposta la rampa. Per questo motivo, non è possibile usare questa funzione per impostare solo una rampa gamma arbitraria . In particolare, gli euristici impediscono rampe che comportano quasi tutti i pixel che si avvicinano a un singolo valore (ad esempio nero/bianco a schermo intero), in quanto ciò potrebbe impedire a un utente di ripristinare lo schermo.

  • A causa della natura globale della funzione, qualsiasi altra applicazione nel sistema potrebbe, in qualsiasi momento, sovrascrivere qualsiasi rampa impostata. In alcuni casi il sistema operativo stesso può riservare l'uso di questa funzione, causando la sovrascrizione di qualsiasi rampa esistente. La rampa gamma viene reimpostata anche sulla maggior parte degli eventi di visualizzazione (connessione/disconnessione di un monitor, modifiche alla risoluzione e così via). Quindi non è possibile essere certi che qualsiasi rampa impostata sia effettiva.

  • Questa API ha un comportamento non definito nelle modalità HDR.

  • Questa API ha un'interazione non definita con soluzioni di calibrazione dei colori predefinite e di terze parti.

Per la calibrazione dei colori, è consigliabile creare un profilo International Color Consortium (ICC) e consentire al sistema operativo di applicare il profilo. Per scenari OEM (Advanced Original Equipment Manufacturer), è disponibile un modello di driver di dispositivo che è possibile usare per personalizzare la calibrazione dei colori più direttamente. Per informazioni sulla gestione dei profili di colore, vedere Windows Color System .

Per il filtro della luce blu, Windows offre ora il supporto predefinito denominato Night Light. È consigliabile indirizzare gli utenti a questa funzionalità.

Per l'adattamento dei colori (ad esempio, la regolazione della calibrazione dei colori in base ai sensori di luce ambientale), Windows offre ora il supporto predefinito, che è consigliabile usare da parte degli OEMs.

Per gli effetti di filtro personalizzati, esistono diversi filtri di colore di accessibilità predefiniti che consentono di usare un'ampia gamma di casi.

Sintassi

BOOL SetDeviceGammaRamp(
  HDC    hdc,
  LPVOID lpRamp
);

Parametri

hdc

Specifica il contesto del dispositivo della scheda di visualizzazione del colore diretto in questione.

lpRamp

Puntatore a un buffer contenente la rampa gamma da impostare. La rampa gamma viene specificata in tre matrici di 256 elementi WORD , che contengono il mapping tra i valori RGB nel buffer frame e i valori del convertitore analogico digitale (DAC ). La sequenza delle matrici è rossa, verde, blu. I valori RGB devono essere archiviati nei bit più significativi di ogni WORD per aumentare l'indipendenza da applicazione livello dati.

Valore restituito

Se questa funzione ha esito positivo, il valore restituito è TRUE.

Se questa funzione ha esito negativo, il valore restituito è FALSE.

Commenti

Le modalità di visualizzazione diretta del colore non usano tabelle di ricerca dei colori e sono in genere 16, 24 o 32 bit. Non tutte le schede video di colore diretto supportano rampe gamma caricabili. SetDeviceGammaRamp riesce solo per i dispositivi con driver che supportano le rampe gamma scaricabili nell'hardware.

Nota

Questa API può richiedere un periodo di tempo non semplice da eseguire. Potrebbe richiedere fino a 200ms per restituire un hardware.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wingdi.h
Libreria Gdi32.lib
DLL Gdi32.dll

Vedi anche