Partager via


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

La méthode IPrintOemDriverUni::DrvXMoveTo est fournie par le pilote Unidrv afin qu’un plug-in de rendu puisse avertir le pilote des modifications de position x du curseur.

Syntaxe

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

Paramètres

pdevobj

Pointeur fourni par l’appelant vers une structure DEVOBJ.

x

La valeur fournie par l’appelant représentant le nombre d’unités que le curseur doit être déplacée. L’unité est définie par les indicateurs de MV_GRAPHICS dans dwFlags.

dwFlags

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

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

S’il n’est pas défini, la valeur du paramètre x est exprimée en unités maîtres. Par exemple, si l’unité principale x est 600 et x est 300, le mouvement est ?? pouce.

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

S’il n’est pas défini, la valeur du paramètre x est relative à l’origine de la zone imprimable.

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

MV_RELATIVE Si elle est définie, spécifie que le curseur doit être déplacé unités x de sa position actuelle.

S’il n’est pas défini, spécifie que le curseur doit être déplacé x unités de son origine.

MV_UPDATE Si elle 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 que Unidrv doit mettre à jour son calcul actuel de la position du curseur et déplacer également le curseur.

[out] piResult

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

Valeur de retour

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

Retourner le code Description
S_OK
L’opération a réussi.
E_FAIL
L’opération a échoué.
E_NOTIMPL
La méthode n’est pas implémentée.

Remarques

Les méthodes IPrintOemDriverUni::DrvXMoveTo et IPrintOemDriverUni ::D rvYMoveTo permettent à un plug-in de rendu d’envoyer des données d’image au spouleur d’imprimante sans entraîner la perte 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 le renvoyer 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 ::ImageProcess ing doit mettre à jour la position du curseur, elle peut appeler IPrintOemDriverUni::DrvXMoveTo ou IPrintOemDriverUni::DrvYMoveTo avec l’indicateur de MV_UPDATE effacé. Cela entraîne l’envoi de commandes de curseur au spouleur d’impression et la mise à jour de 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 spoulage, elle peut appeler IPrintOemDriverUni::DrvXMoveTo ou IPrintOemDriverUni::DrvYMoveTo avec l’indicateur de MV_UPDATE défini. Cela entraîne la mise à jour de son calcul interne de la position actuelle du curseur sans envoyer de commandes de curseur au spouleur d’impression.

Exigences

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