Método IPrintOemDriverUni::D rvXMoveTo (prcomoem.h)
O método IPrintOemDriverUni::DrvXMoveTo
é fornecido pelo driver Unidrv para que um plug-in de renderização possa notificar o driver de alterações de posição x do cursor.
Sintaxe
HRESULT DrvXMoveTo(
PDEVOBJ pdevobj,
INT x,
DWORD dwFlags,
[out] OUT INT *piResult
);
Parâmetros
pdevobj
Ponteiro fornecido pelo chamador para uma estrutura de DEVOBJ.
x
O valor fornecido pelo chamador que representa o número de unidades que o cursor deve ser movido. A unidade é definida pelos sinalizadores de MV_GRAPHICS em dwFlags.
dwFlags
Um ou mais dos seguintes sinalizadores de bits fornecidos pelo chamador:
Bandeira | Definição |
---|---|
MV_GRAPHICS |
Se definido, o valor do parâmetro x será expresso em ponto, com base na resolução atual da impressora. Por exemplo, se a resolução x for 150 DPI e x for 75, o movimento será ?? polegada.
Se não for definido, o valor do parâmetro x será expresso em unidades mestras. Por exemplo, se a unidade mestra x for 600 e x for 300, o movimento será ?? polegada. |
MV_PHYSICAL |
Se definido, o valor do parâmetro x será relativo à origem do cursor.
Se não for definido, o valor do parâmetro x será relativo à origem da área imprimível. Não será possível definir se MV_RELATIVE estiver definido. |
MV_RELATIVE |
Se definido, especifica que o cursor deve ser movido x unidades de sua posição atual.
Se não for definido, especifica que o cursor deve ser movido x unidades de sua origem. |
MV_UPDATE |
Se definido, especifica que o Unidrv deve atualizar seu cálculo atual da posição do cursor sem realmente mover o cursor. (Deve ser definido se IPrintOemUni::ImageProcessing moveu o cursor.) Se não for definido, especifica que o Unidrv deve atualizar seu cálculo atual da posição do cursor e também mover o cursor. |
[out] piResult
Recebe o resultado fornecido pelo método de subtrair a posição real do novo cursor da nova posição do cursor solicitada. Esse valor pode ser zero, mas é sempre nãonegativo.
Valor de retorno
O método deve retornar um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
A operação foi bem-sucedida. |
|
Falha na operação. |
|
O método não é implementado. |
Observações
Os métodos IPrintOemDriverUni::DrvXMoveTo
e IPrintOemDriverUni::D rvYMoveTo permitem que um plug-in de renderização envie dados de imagem para o spooler da impressora sem fazer com que o driver da impressora perca o controle da posição do cursor da impressora. Se você fornecer um método IPrintOemUni::ImageProcessing que envia dados de imagem diretamente para o spooler de impressão em vez de devolvê-los ao driver de impressora, o método deve chamar IPrintOemDriverUni::DrvXMoveTo
e IPrintOemDriverUni::DrvYMoveTo
.
Qualquer uma das duas técnicas pode ser usada para atualizar a posição do cursor:
-
Sempre que um método IPrintOemUni::ImageProcessing precisar atualizar a posição do cursor, ele pode chamar
IPrintOemDriverUni::DrvXMoveTo
ouIPrintOemDriverUni::DrvYMoveTo
com o sinalizador MV_UPDATE limpo. Isso faz com que o Unidrv envie comandos de cursor para o spooler de impressão e atualize seu cálculo interno da posição atual do cursor. -
O método IPrintOemUni::ImageProcessing pode atualizar o cursor enviando comandos de cursor diretamente para o spooler de impressão. Quando o método terminar sua operação de spooling, ele poderá chamar
IPrintOemDriverUni::DrvXMoveTo
ouIPrintOemDriverUni::DrvYMoveTo
com o sinalizador MV_UPDATE definido. Isso faz com que o Unidrv atualize seu cálculo interno da posição atual do cursor sem enviar comandos de cursor para o spooler de impressão.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | prcomoem.h (inclua Prcomoem.h) |