Struttura LOGCOLORSPACEA (wingdi.h)
La struttura LOGCOLORSPACE contiene informazioni che definiscono uno spazio colore logico.
Sintassi
typedef struct tagLOGCOLORSPACEA {
DWORD lcsSignature;
DWORD lcsVersion;
DWORD lcsSize;
LCSCSTYPE lcsCSType;
LCSGAMUTMATCH lcsIntent;
CIEXYZTRIPLE lcsEndpoints;
DWORD lcsGammaRed;
DWORD lcsGammaGreen;
DWORD lcsGammaBlue;
CHAR lcsFilename[MAX_PATH];
} LOGCOLORSPACEA, *LPLOGCOLORSPACEA;
Members
lcsSignature
Firma dello spazio dei colori. Al momento, questo membro deve essere sempre impostato su LCS_SIGNATURE.
lcsVersion
Numero di versione; deve essere 0x400.
lcsSize
Dimensioni di questa struttura, in byte.
lcsCSType
Tipo di spazio colore. Il membro può essere uno dei valori seguenti.
Valore | Significato |
---|---|
LCS_CALIBRATED_RGB | I valori di colore sono valori RGB calibrati. I valori vengono convertiti usando gli endpoint specificati dal membro lcsEndpoints prima di essere passati al dispositivo. |
LCS_sRGB | I valori di colore sono valori sRGB. |
LCS_WINDOWS_COLOR_SPACE | I valori di colore sono valori di colore predefiniti di Windows. |
Se non viene specificato LCS_CALIBRATED_RGB, il membro lcsEndpoints viene ignorato.
lcsIntent
Metodo di mapping di gamut. Questo membro può essere uno dei valori seguenti.
Valore | Finalità | Nome CPI | Significato |
---|---|---|---|
LCS_GM_ABS_ |
Corrispondenza | Colorimetrica assoluta | Mantenere il punto bianco. Trova la corrispondenza dei colori con il colore più vicino nella gamma di destinazione. |
LCS_GM_ |
Graphic | Saturazione | Mantenere la saturazione. Usato per i grafici aziendali e altre situazioni in cui sono necessari colori senzathering. |
LCS_GM_ |
Proof | Colorimetrica relativa | Mantenere la corrispondenza colorimetrica. Utilizzato per disegni grafici e colori denominati. |
LCS_GM_ |
Immagine | Percettivo | Mantenere il contrasto. Utilizzato per fotografie e immagini naturali. |
lcsEndpoints
Endpoint rosso, verde, blu.
lcsGammaRed
Scala della coordinata rossa.
lcsGammaGreen
Scala della coordinata verde.
lcsGammaBlue
Scala della coordinata blu.
lcsFilename[MAX_PATH]
Stringa con terminazione Null che assegna un nome a un file di profilo colore. Questo membro è in genere impostato su zero, ma può essere usato per impostare lo spazio dei colori esattamente come specificato dal profilo colore. Ciò è utile per i dispositivi che inseriscono valori di colore per una stampante specifica o quando si usa un matcher colori immagine installabile. Se viene specificato un profilo colore, tutti gli altri membri di questa struttura devono essere impostati su valori ragionevoli, anche se i valori non sono completamente accurati.
Commenti
Come le tavolozze, ma a differenza delle penne e dei pennelli, è necessario passare un puntatore durante la creazione di un Oggetto LogColorSpace.
Se il membro lcsCSType è impostato su LCS_sRGB o LCS_WINDOWS_COLOR_SPACE, gli altri membri di questa struttura vengono ignorati e WCS utilizza lo spazio dei colori sRGB. I membri lcsEndpoints,lcsGammaRed, lcsGammaGreen e lcsGammaBlue vengono usati per descrivere lo spazio dei colori logico. Il membro lcsEndpoints è un CIEXYZTRIPLE che contiene i valori x, y e z dell'endpoint RGB dello spazio dei colori.
Il formato di bit DWORD richiesto per lcsGammaRed, lcsGammaGreen e lcsGammaBlue è un intero a 8,8 punti fissi spostato a sinistra di 8 bit. Ciò significa che 8 bit interi sono seguiti da 8 bit frazionari. Tenendo conto dello spostamento dei bit, il formato richiesto della DWORD a 32 bit è:
00000000nnnnnnnnffffffff00000000
Ogni volta che il membro lcsFilename contiene un nome file e il membro lcsCSType è impostato su LCS_CALIBRATED_RGB, WCS ignora gli altri membri di questa struttura. Usa lo spazio colore nel file come spazio colori a cui fa riferimento questa struttura LOGCOLORSPACE .
La relazione tra valori tri-stimolo X,Y,Z e cromatica valori x,y,z è la seguente:
x = X/(X+Y+Z)
y = Y/(X+Y+Z)
z = Z/(X+Y+Z)
Se il membro lcsCSType è impostato su LCS_sRGB o LCS_WINDOWS_COLOR_SPACE, gli altri membri di questa struttura vengono ignorati e ICM usa lo spazio dei colori sRGB. Le applicazioni devono comunque inizializzare il resto della struttura perché CreateProfileFromLogColorSpace ignora il membro lcsCSType e usa lcsEndpoints, lcsGammaRed, lcsGammaGreen, lcsGammaBlue membri per creare un profilo, che potrebbe non essere inizializzato in caso di spazi di colore LCS_sRGB o LCS_WINDOWS_COLOR_SPACE.
Nota
L'intestazione wingdi.h definisce LOGCOLORSPACE come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | wingdi.h |