Partager via


CreateColorTransformW, fonction (icm.h)

Crée une transformation de couleur que les applications peuvent utiliser pour effectuer la gestion des couleurs.

Syntaxe

HTRANSFORM CreateColorTransformW(
  LPLOGCOLORSPACEW 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 WCS (Windows Color System).

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 à utiliser pour 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 passe de l’espace de couleur logique source au profil de destination. Si le profil cible est donné, la transformation va de l’espace de couleur 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 à servir uniquement d’indicateurs. Le module de gestion des couleurs doit déterminer la meilleure façon de les utiliser.

Windows Vista : Trois nouveaux indicateurs qui peuvent être utilisés avec dwFlags ont été ajoutés :

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 l’indicateur de SEQUENTIAL_TRANSFORM ne peut être utilisée que dans le thread sur lequel elle a été créée et uniquement pour un appel de traduction de couleur à la fois. COM doit être initialisé avant la création de la transformation séquentielle et doit rester initialisé pendant toute la durée de vie de l’objet de transformation.
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-à-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 des transformations 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 WCS/ICC mixte, soit une transformation de tous les profils ICC avec WCS_ALWAYS définie :

  • Profils ColorSpace non RVB
  • Profils NamedColor
  • profils n-canal (où n > 8)
  • 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

Voir aussi