Partager via


DrvQueryColorProfile, fonction (winddiui.h)

La fonction DrvQueryColorProfile permet à une DLL d’interface d’imprimante de spécifier un profil ICC à utiliser pour la gestion des couleurs.

Syntaxe

BOOL DrvQueryColorProfile(
        HANDLE    hPrinter,
  [in]  PDEVMODEW pdevmode,
        ULONG     ulQueryMode,
  [out] VOID      *pvProfileData,
  [out] ULONG     *pcbProfileData,
  [out] FLONG     *pflProfileData
);

Paramètres

hPrinter

Handle d’imprimante fourni par l’appelant.

[in] pdevmode

Pointeur fourni par l’appelant vers une structureDEVMODEW.

ulQueryMode

Un des indicateurs de bits fournis par l’appelant suivant, indiquant le type de profil à spécifier.

Drapeau Définition
QCP_DEVICEPROFILE L’appelant demande un profil d’appareil.
QCP_SOURCEPROFILE L’appelant demande un profil source.

[out] pvProfileData

Pointeur fourni par l’appelant vers une mémoire tampon pour recevoir des informations de profil.

[out] pcbProfileData

Pointeur fourni par l’appelant vers une valeur représentant la taille, en octets, de la mémoire tampon pointée par pvProfileData.

[out] pflProfileData

Un des indicateurs de bits fournis par la fonction suivants, indiquant le type d’informations retournées par la fonction.

Drapeau Définition
QCP_PROFILEDISK La fonction retourne le nom de fichier d’un profil ICC dans la mémoire tampon pointée par pvProfileData.
QCP_PROFILEMEMORY La fonction retourne des données de profil dans la mémoire tampon pointée par pvProfileData.

Valeur de retour

Si l’opération réussit, la fonction retourne TRUE; sinon, elle retourne FALSE.

Remarques

Une DLL d’interface d’imprimante peut éventuellement fournir une fonction DrvQueryColorProfile. Si la fonction est fournie, GDI l’appelle si ICM a été activé pour une tâche d’impression. L’objectif de la fonction est de déterminer et de spécifier un profil ICC approprié à utiliser avec le travail d’impression.

Si la DLL d’interface d’imprimante d’un pilote ne fournit pas de fonction DrvQueryColorProfile, ou si la fonction retourne FALSE, GDI tente de trouver un profil. Pour plus d’informations, consultez Localisation des profils ICC.

Si la taille de mémoire tampon de sortie spécifiée par ccpProfileData est trop petite, le pilote doit remplacer la valeur de taille fournie par dockerProfileData avec la taille de mémoire tampon requise, appeler SetLastError(ERROR_INSUFFICIENT_BUFFER) et retourner FALSE.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête winddiui.h (include Winddiui.h)