Fonction DrvQueryColorProfile (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 structure DEVMODEW .

ulQueryMode

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

Indicateur 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 vers pvProfileData.

[out] pflProfileData

L’un des indicateurs de bits suivants fournis par la fonction, indiquant le type d’informations que la fonction retourne.

Indicateur 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 retournée

Si l’opération réussit, la fonction retourne TRUE ; sinon, il 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 un travail d’impression. L’objectif de la fonction est de déterminer et de spécifier un profil ICC approprié pour une utilisation 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 de profils ICC.

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

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête winddiui.h (inclure Winddiui.h)