Partager via


WcsOpenColorProfileW, fonction (icm.h)

Crée un handle pour un profil de couleur spécifié.

Syntaxe

HPROFILE WcsOpenColorProfileW(
  PPROFILE pCDMPProfile,
  PPROFILE pCAMPProfile,
  PPROFILE pGMMPProfile,
  DWORD    dwDesireAccess,
  DWORD    dwShareMode,
  DWORD    dwCreationMode,
  DWORD    dwFlags
);

Paramètres

pCDMPProfile

Pointeur vers un DMP WCS ou une structure de profil de couleur ICC spécifiant le profil. Vous pouvez libérer le pointeur pCDMPProfile après avoir créé le handle. Si le profil est ICC et que son membre dwType est défini sur DONT_USE_EMBEDDED_WCS_PROFILES, WcsOpenColorProfile ignore tout profil WCS incorporé dans le profil ICC.

pCAMPProfile

Pointeur vers une structure de profil qui spécifie un profil de modèle d’apparence de couleur WCS (CAMP). Vous pouvez libérer le pointeur pCAMPProfile après avoir créé le handle. Si la valeur est NULL, la valeur CAMP par défaut est utilisée et le paramètre utilisateur actuel, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, est utilisé lors de l’interrogation du CAMP par défaut.

pGMMPProfile

Pointeur vers une structure de profil qui spécifie un profil GMMP (Gamut Map Model Profile) WCS. Vous pouvez libérer le pointeur pGMMPProfile après avoir créé le handle. Si la valeur est NULL, la valeur GMMP par défaut de l’intention de rendu par défaut est utilisée et le paramètre utilisateur actuel, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, est utilisé lors de l’interrogation du GMMP par défaut. Pour obtenir une description des intentions de rendu, consultez Intentions de rendu.

dwDesireAccess

Valeur d’indicateur qui spécifie comment accéder au profil de couleur spécifié. Ce paramètre doit prendre l’une des valeurs suivantes :

Valeur Description
PROFILE_READ Spécifie que le profil de couleurs s’ouvre pour un accès en lecture seule.
PROFILE_READWRITE Spécifie que le profil de couleurs s’ouvre pour l’accès en lecture et en écriture. La valeur de cet indicateur est ignorée si le profil est un profil WCS.

dwShareMode

Valeur d’indicateur qui spécifie les actions à effectuer lors de l’ouverture d’un profil de couleurs contenu dans un fichier. Ce paramètre doit prendre l’une des valeurs suivantes, qui sont définies dans winnt.h :

Valeur Description
FILE_SHARE_READ Spécifie que vous pouvez effectuer d’autres opérations d’ouverture (pour l’accès en lecture) sur le profil.
FILE_SHARE_WRITE Spécifie que vous pouvez effectuer d’autres opérations d’ouverture (pour l’accès en écriture) sur le profil. Cette valeur d’indicateur est ignorée lorsqu’un profil WCS est ouvert.

dwCreationMode

Valeur d’indicateur qui spécifie les actions à effectuer lors de l’ouverture d’un profil de couleurs s’il est contenu dans un fichier. Ce paramètre doit prendre l’une des valeurs suivantes, qui sont définies dans winbase.h :

Valeur Description
CREATE_NEW Spécifie qu’un nouveau profil est créé. Cette fonction échoue si le profil existe déjà.
CREATE_ALWAYS Spécifie qu’un nouveau profil est créé. Si un profil existe déjà, il est remplacé.
OPEN_EXISTING Spécifie que le profil est ouvert. Cette fonction échoue si le profil n’existe pas.
OPEN_ALWAYS Spécifie que le profil doit être ouvert s’il existe un fichier ICC (International Color Consortium). S’il n’existe pas de profil ICC, WCS crée un profil ICC. La fonction échoue pour les profils WCS si cet indicateur est défini et qu’aucun profil WCS n’existe.
TRUNCATE_EXISTING Spécifie que le profil doit être ouvert et tronqué à zéro octet. La fonction échoue si le profil n’existe pas.

dwFlags

Valeur d’indicateur qui spécifie s’il faut utiliser le profil WCS incorporé. Ce paramètre n’a aucun effet, sauf si pCDMProfile spécifie un profil ICC qui contient un profil WCS incorporé.

Ce paramètre prend l’une des valeurs suivantes :

Valeur Description
0 Spécifie que le profil WCS incorporé sera utilisé et que le profil ICC spécifié par pCDMPProfile sera ignoré.
DONT_USE_EMBEDDED_WCS_PROFILES Spécifie que le profil ICC spécifié par pCDMPProfile sera utilisé et que le profil WCS incorporé sera ignoré.

Valeur retournée

Si cette fonction réussit, la valeur de retour est le handle du profil de couleur ouvert.

Si cette fonction échoue, la valeur de retour est NULL.

Remarques

Cette API accepte un ensemble de DMP, CAMP et GMMP et retourne un handle de profil WCS. Les valeurs NULL pour GMMP sont valides. Une valeur NULL pour CAMP est remplacée par la valeur CAMP par défaut.

Cette API accepte également les profils ICC. L’utilisation d’un profil ICC ne garantit pas le traitement par le moteur CITE wcs. Le moteur WCS ne sera utilisé que s’il est passé au moins un profil WCS. Les flux de travail ICC purs seront cohérents avec le comportement hérité.

Vous pouvez utiliser le handle retourné par cette fonction dans d’autres fonctions de gestion des profils de couleurs.

Les indicateurs dwCreationMode CREATE_NEW, CREATE_ALWAYS et TRUNCATE_EXISTING retournent toujours des HPROFILEs ICC vides. Si d’autres indicateurs dwCreationMode sont présents, la fonction détermine si le profil est ICC ou WCS XML.

Dans le chemin de code ICC, un fichier HPROFILE ICC est retourné à l’aide des indicateurs de partage, d’accès et de création demandés, comme spécifié dans les tableaux ci-dessus.

Dans le chemin d’accès WCS, l’indicateur dwCreationMode OPEN_ALWAYS échoue si le profil n’existe pas, car les profils WCS ne peuvent pas être créés ou modifiés dans l’architecture WCS (ils doivent être modifiés en dehors de celui-ci, à l’aide de MSXML6). Pour la même raison, l’indicateur dwShareMode FILE_SHARE_WRITE et l’indicateur dwDesiredAccess PROFILE_READWRITE sont ignorés dans le chemin WCS.

Une fois le handle du profil de couleur créé, toutes les informations utilisées pour créer ce handle peuvent être supprimées.

Utilisez la fonction CloseColorProfile pour fermer un handle d’objet retourné par WcsOpenColorProfile.

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 icm.h
Bibliothèque Mscms.lib
DLL Mscms.dll

Voir aussi