Partager via


CheckBitmapBitBits, fonction (icm.h)

Vérifie si les pixels d’un bitmap spécifié se trouvent dans la gamut de sortie d’une transformation spécifiée.

Syntaxe

BOOL CheckBitmapBits(
  HTRANSFORM    hColorTransform,
  PVOID         pSrcBits,
  BMFORMAT      bmInput,
  DWORD         dwWidth,
  DWORD         dwHeight,
  DWORD         dwStride,
  PBYTE         paResult,
  PBMCALLBACKFN pfnCallback,
  LPARAM        lpCallbackData
);

Paramètres

hColorTransform

Gérez la transformation de couleur à utiliser.

pSrcBits

Pointeur vers la bitmap vers case activée par rapport au gamut de sortie.

bmInput

Spécifie le format de l’image bitmap. Doit être défini sur l’une des valeurs du type énuméré BMFORMAT .

dwWidth

Spécifie le nombre de pixels par ligne d’analyse de la bitmap.

dwHeight

Spécifie le nombre de lignes d’analyse de l’image bitmap.

dwStride

Spécifie le nombre d’octets entre la ligne d’analyse de début et le début de la suivante. Si la valeur est égale à zéro, les lignes d’analyse bitmap sont supposées être rembourrées afin d’être alignées sur DWORD.

paResult

Pointeur vers un tableau d’octets où les résultats du test doivent être placés. Cette mémoire tampon de résultats doit contenir au moins autant d’octets que de pixels dans la bitmap.

pfnCallback

Pointeur vers une fonction de rappel appelée régulièrement par CheckBitmapBitBits pour signaler la progression et permettre au processus d’appel d’annuler le test bitmap. (Voir ICMProgressProcCallback).

lpCallbackData

Données transmises à la fonction de rappel, par exemple, pour identifier le test bitmap sur lequel la progression est signalée.

Valeur retournée

Si cette fonction réussit, la valeur de retour est une valeur différente de zéro.

Si cette fonction échoue, la valeur de retour est zéro. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Si le format d’entrée n’est pas compatible avec la transformation de couleur, la fonction CheckBitmapBitBits échoue.

Cette fonction place les résultats des tests dans la mémoire tampon pointée par paResult. Chaque octet de la mémoire tampon correspond à un pixel dans la bitmap et a une valeur non signée comprise entre 0 et 255. La valeur 0 indique que la couleur est en gamut, tandis qu’une valeur différente de zéro indique qu’elle est hors gamut. Pour tout entier n tel que 0 <n< 255, une valeur de résultat de n + 1 indique que la couleur correspondante est au moins aussi éloignée de la gamut que serait indiquée par une valeur de résultat de n.

Lorsque l’un des BMFORMAT à virgule flottante, BM_32b_scARGB ou BM_32b_scRGB est utilisé, les données de couleur vérifiées ne doivent pas contenir de NaN ou d’infini. NaN et infinity ne sont pas considérés comme représentant des valeurs de composants de couleur légitimes, et le résultat de la vérification des pixels contenant naN ou infini n’a aucun sens en termes de couleur. Les valeurs NaN ou infini dans les données de couleur en cours de traitement seront gérées en mode silencieux et aucune erreur ne sera retournée.

Les informations hors gamut dans les étiquettes gamut créées dans WCS utilisent la distance de couleur perceptive dans CIECAM02, qui est la racine carrée moyenne dans CIECAM02 espace Jab. La distance dans les balises de gamut de profil ICC héritées est la racine carrée moyenne dans l’espace CIELAB. Nous vous recommandons d’utiliser l’espace CIECAM02 lorsqu’il est disponible, car il fournit des métriques de distance plus précises.

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