CreateColorTransformA, fonction (icm.h)
Crée une transformation de couleur que les applications peuvent utiliser pour effectuer la gestion des couleurs.
Syntaxe
HTRANSFORM CreateColorTransformA(
LPLOGCOLORSPACEA pLogColorSpace,
HPROFILE hDestProfile,
HPROFILE hTargetProfile,
DWORD dwFlags
);
Paramètres
pLogColorSpace
Pointeur vers l’entrée LOGCOLORSPACEA.
hDestProfile
Gérez le profil de l’appareil de destination. La fonction détermine si le HPROFILE contient des informations de profil ICC (International Color Consortium) ou Windows Color System (WCS).
hTargetProfile
Gérez le profil de l’appareil cible. La fonction détermine si le fichier HPROFILE contient des informations de profil ICC ou WCS.
dwFlags
Spécifie les indicateurs pour utiliser la création de contrôle de la transformation. Consultez la section Notes.
Valeur de retour
Si cette fonction réussit, la valeur de retour est un handle de la transformation de couleur.
Si cette fonction échoue, la valeur de retour est NULL. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Remarques
Si le profil cible est NULL, la transformation va de l’espace de couleurs logique source au profil de destination. Si le profil cible est donné, la transformation passe de l’espace de couleurs logique source au profil cible, puis au profil de destination. Cela permet d’afficher un aperçu de la sortie destinée à l’appareil cible sur l’appareil de destination.
Les valeurs dans dwFlags sont destinées uniquement à des indicateurs. Le module de gestion des couleurs doit déterminer la meilleure façon de les utiliser.
Windows Vista : trois nouveaux indicateurs ont été ajoutés et peuvent être utilisés avec dwFlags :
Indicateur | Description |
---|---|
PRESERVEBLACK | Si ce bit est défini, le moteur de transformation insère le GMMP de génération noire approprié comme dernier GMMP dans la séquence de transformation. Cet indicateur fonctionne uniquement dans une transformation WCS pure. |
SEQUENTIAL_TRANSFORM | Si ce bit est défini, chaque étape du pipeline de traitement WCS est effectuée pour chaque pixel de l’image et aucune transformation de couleur optimisée n’est générée. Cet indicateur fonctionne uniquement dans une transformation WCS pure. Restrictions : une transformation créée avec le jeu d’indicateurs SEQUENTIAL_TRANSFORM ne peut être utilisée que dans le thread sur lequel elle a été créée et uniquement pour un seul appel de traduction de couleur à la fois. COM doit être initialisé avant de créer la transformation séquentielle et doit rester initialisé pendant toute la durée de vie de l’objet transform. |
WCS_ALWAYS | Si ce bit est défini, même les transformations toutes ICC utilisent le chemin de code WCS. |
Notes
SEQUENTIAL_TRANSFORM a été omis par inadvertance de l’en-tête icm.h dans le Kit de développement logiciel (SDK) Windows Vista. Si vous souhaitez utiliser l’indicateur SEQUENTIAL_TRANSFORM , définissez-le dans votre application comme suit :#define SEQUENTIAL_TRANSFORM 0x80800000
Pour plus d’informations, consultez Indicateurs de création de transformation CMM. Tous les indicateurs mentionnés ici sont pris en charge pour tous les types de transformations, à l’exception de FAST_TRANSLATE, qui fonctionne uniquement dans une transformation ICC-to-ICC pure.
La fonction CreateColorTransform est utilisée en dehors d’un contexte d’appareil. Les couleurs peuvent changer lors de la transformation d’un profil de couleur vers le même profil de couleur. Cela est dû à des erreurs de précision. Par conséquent, une transformation de couleur ne doit pas être effectuée dans ces circonstances.
Les balises B2Ax sont requises pour tout profil qui est la cible d’une transformation.
La prise en charge de la transformation WCS pour les profils Icc ColorSpace est limitée aux profils d’espace de couleurs RVB. Les types de profils ICC suivants ne peuvent pas être utilisés dans une transformation traitée CITE, soit une transformation MIXTE WCS/ICC, soit une transformation icc avec WCS_ALWAYS défini :
- Profils ColorSpace non RVB
- Profils NamedColor
- profils n-canal (où n8 > )
- Profils DeviceLink
- Profils abstraits
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 |