Share via


IPrintOemDriverUni ::D rvYMoveTo, méthode (prcomoem.h)

La IPrintOemDriverUni::DrvYMoveTo méthode est fournie par le pilote Unidrv afin qu’un plug-in de rendu puisse notifier le pilote de modifications de position Y du curseur.

Syntaxe

HRESULT DrvYMoveTo(
        PDEVOBJ pdevobj,
        INT     y,
        DWORD   dwFlags,
  [out] OUT INT *piResult
);

Paramètres

pdevobj

Pointeur fourni par l’appelant vers une structure DEVOBJ .

y

Valeur fournie par l’appelant qui représente le nombre d’unités que le curseur doit être déplacé. L’unité est définie par les indicateurs MV_GRAPHICS dans dwFlags.

dwFlags

Un ou plusieurs des indicateurs de bits fournis par l’appelant suivants :

Indicateur Définition
MV_GRAPHICS Si elle est définie, la valeur du paramètre y est exprimée en points, en fonction de la résolution actuelle de l’imprimante. Par exemple, si la résolution y est de 150 PPP et que y est de 75, le mouvement est ?? Pouces.

Si elle n’est pas définie, la valeur du paramètre y est exprimée en unités master. Par exemple, si l’unité y master est 600 et y est 300, le mouvement est ?? Pouces.

MV_PHYSICAL Si elle est définie, la valeur du paramètre y est relative à l’origine du curseur.

Si elle n’est pas définie, la valeur du paramètre y est relative à l’origine de la zone imprimable.

Impossible de définir si MV_RELATIVE est défini.

MV_RELATIVE Si la valeur est définie, spécifie que le curseur doit être déplacé d’unités y à partir de sa position actuelle.

S’il n’est pas défini, spécifie que le curseur doit être déplacé par rapport à son origine.

MV_UPDATE Si la valeur est définie, spécifie qu’Unidrv doit mettre à jour son calcul actuel de la position du curseur sans réellement déplacer le curseur. (Doit être défini si IPrintOemUni ::ImageProcessing a déplacé le curseur.)

S’il n’est pas défini, spécifie qu’Unidrv doit mettre à jour son calcul actuel de la position du curseur et également déplacer le curseur.

[out] piResult

Reçoit le résultat fourni par la méthode qui consiste à soustraire la nouvelle position réelle du curseur de la nouvelle position de curseur demandée. Cette valeur peut être égale à zéro, mais elle est toujours non négative.

Valeur retournée

La méthode doit retourner l’une des valeurs suivantes.

Code de retour Description
S_OK
L’opération a réussi.
E_FAIL
L'opération a échoué.
E_NOTIMPL
Cette méthode n'est pas implémentée.

Remarques

Les méthodes IPrintOemDriverUni ::D rvXMoveTo et IPrintOemDriverUni::DrvYMoveTo permettent à un plug-in de rendu d’envoyer des données d’image au spouleur d’imprimante sans que le pilote d’imprimante perde la trace de la position du curseur de l’imprimante. Si vous fournissez une méthode IPrintOemUni ::ImageProcessing qui envoie des données d’image directement au spouleur d’impression au lieu de les retourner au pilote d’imprimante, la méthode doit appeler IPrintOemDriverUni::DrvXMoveTo et IPrintOemDriverUni::DrvYMoveTo.

L’une des deux techniques peut être utilisée pour mettre à jour la position du curseur :

  • Chaque fois qu’une méthode IPrintOemUni ::ImageProcessing doit mettre à jour la position du curseur, elle peut appeler IPrintOemDriverUni::DrvXMoveTo ou IPrintOemDriverUni::DrvYMoveTo avec l’indicateur MV_UPDATE effacé. Cela oblige Unidrv à envoyer des commandes de curseur au spouleur d’impression et à mettre à jour son calcul interne de la position actuelle du curseur.
  • La méthode IPrintOemUni ::ImageProcessing peut mettre à jour le curseur en envoyant des commandes de curseur directement au spouleur d’impression. Lorsque la méthode a terminé son opération de mise en attente, elle peut appeler IPrintOemDriverUni::DrvXMoveTo ou IPrintOemDriverUni::DrvYMoveTo avec l’indicateur MV_UPDATE défini. Cela oblige Unidrv à mettre à jour son calcul interne de la position actuelle du curseur sans envoyer de commandes de curseur au spouleur d’impression.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête prcomoem.h (include Prcomoem.h)