STRUCTURE LOGCOLORSPACEA (wingdi.h)

La structure LOGCOLORSPACE contient des informations qui définissent un espace de couleurs logique.

Syntaxe

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;

Membres

lcsSignature

Signature d’espace de couleur. À l’heure actuelle, ce membre doit toujours être défini sur LCS_SIGNATURE.

lcsVersion

Numéro de version ; doit être 0x400.

lcsSize

Taille de cette structure, en octets.

lcsCSType

Type d’espace de couleur. Le membre peut être l’une des valeurs suivantes.

Valeur Signification
LCS_CALIBRATED_RGB Les valeurs de couleur sont des valeurs RVB étalonnées. Les valeurs sont traduites à l’aide des points de terminaison spécifiés par le membre lcsEndpoints avant d’être transmises à l’appareil.
LCS_sRGB Les valeurs de couleur sont des valeurs sRGB.
LCS_WINDOWS_COLOR_SPACE Les valeurs de couleur sont des valeurs de couleur d’espace de couleur par défaut de Windows.
 

Si LCS_CALIBRATED_RGB n’est pas spécifié, le membre lcsEndpoints est ignoré.

lcsIntent

Méthode de mappage de gamut. Ce membre peut être l’une des valeurs suivantes.

Valeur Intentionnel Nom ICC Signification
LCS_GM_ABS_
 
COLORIMÉTRIQUE
Correspond Colorimétrie absolue Conservez le point blanc. Faire correspondre les couleurs à leur couleur la plus proche dans la gamme de destination.
LCS_GM_
 
ENTREPRISE
Graphic Saturation Maintenir la saturation. Utilisé pour les graphiques métier et d’autres situations dans lesquelles des couleurs non associées sont requises.
LCS_GM_
 
GRAPHIQUES
Proof Colorimétrie relative Maintenir la correspondance colorimétrique. Utilisé pour les conceptions graphiques et les couleurs nommées.
LCS_GM_
 
IMAGES
Image Perception Maintenir le contraste. Utilisé pour les photographies et les images naturelles.

lcsEndpoints

Points de terminaison rouges, verts et bleus.

lcsGammaRed

Mise à l’échelle de la coordonnée rouge.

lcsGammaGreen

Mise à l’échelle de la coordonnée verte.

lcsGammaBlue

Mise à l’échelle de la coordonnée bleue.

lcsFilename[MAX_PATH]

Chaîne terminée par null qui nomme un fichier de profil de couleur. Ce membre est généralement défini sur zéro, mais peut être utilisé pour définir l’espace de couleurs exactement comme spécifié par le profil de couleur. Cela est utile pour les appareils qui entrent des valeurs de couleur pour une imprimante spécifique, ou lors de l’utilisation d’un matcheur de couleurs d’image installable. Si un profil de couleur est spécifié, tous les autres membres de cette structure doivent être définis sur des valeurs raisonnables, même si les valeurs ne sont pas totalement exactes.

Remarques

Comme les palettes, mais contrairement aux stylets et aux pinceaux, un pointeur doit être passé lors de la création d’un LogColorSpace.

Si le membre lcsCSType est défini sur LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE, les autres membres de cette structure sont ignorés et WCS utilise l’espace de couleurs sRGB. Les membres lcsEndpoints,lcsGammaRed, lcsGammaGreen et lcsGammaBlue sont utilisés pour décrire l’espace de couleurs logique. Le membre lcsEndpoints est un CIEXYZTRIPLE qui contient les valeurs x, y et z du point de terminaison RVB de l’espace de couleurs.

Le format de bits DWORD requis pour lcsGammaRed, lcsGammaGreen et lcsGammaBlue est un entier à point fixe 8,8 décalé vers la gauche de 8 bits. Cela signifie que 8 bits entiers sont suivis de 8 bits de fraction. Si l’on tient compte du décalage de bits, le format requis du DWORD 32 bits est le suivant :

00000000000nnnnnnff0000000000000

Chaque fois que le membre lcsFilename contient un nom de fichier et que le membre lcsCSType est défini sur LCS_CALIBRATED_RGB, WCS ignore les autres membres de cette structure. Il utilise l’espace de couleurs dans le fichier comme espace de couleurs auquel fait référence cette structure LOGCOLORSPACE .

La relation entre les valeurs de trois stimulus X,Y,Z et les valeurs de chromaticité x,y,z est la suivante :

x = X/(X+Y+Z)

y = Y/(X+Y+Z)

z = Z/(X+Y+Z)

Si le membre lcsCSType est défini sur LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE, les autres membres de cette structure sont ignorés et ICM utilise l’espace de couleurs sRGB. Les applications doivent toujours initialiser le reste de la structure, car CreateProfileFromLogColorSpace ignore le membre lcsCSType et utilise les membres lcsEndpoints, lcsGammaRed, lcsGammaGreen et lcsGammaBlue pour créer un profil, qui ne peut pas être initialisé en cas d’espaces de couleurs LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE.

Notes

L’en-tête wingdi.h définit LOGCOLORSPACE comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête wingdi.h

Voir aussi

BITMAPV4HEADER

BITMAPV5HEADER

CMJN

RGB