共用方式為


IPrintOemDriverUni::D rvXMoveTo 方法 (prcomoem.h)

方法 IPrintOemDriverUni::DrvXMoveTo 是由 Unidrv 驅動程式提供,讓 轉譯外掛程式 可以通知驅動程式數據指標 x 位置變更。

語法

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

參數

pdevobj

呼叫端提供的 DEVOBJ 結構指標。

x

呼叫端提供的值,代表游標應該移動的單位數。 單位是由 dwFlags 中的MV_GRAPHICS旗標所定義。

dwFlags

下列一或多個呼叫端提供的位旗標:

旗標 定義
MV_GRAPHICS 如果設定, x 參數的值會根據印表機的目前解析度以點表示。 例如,如果 x 解析度為 150 DPI 且 x 為 75,則移動是 ?? 英寸。

如果未設定, x 參數的值會以主要單位表示。 例如,如果 x 主要單位是 600 且 x 是 300,則移動是 ?? 英寸。

MV_PHYSICAL 如果設定, x 參數的值會相對於數據指標原點。

如果未設定, x 參數的值會相對於可列印區域的原點。

如果設定MV_RELATIVE,則無法設定。

MV_RELATIVE 如果設定,指定游標應該從其目前位置移動 x 單位。

如果未設定,指定游標應該從原點移動 x 單位。

MV_UPDATE 如果設定,指定 Unidrv 應該更新其目前的數據指標位置計算,而不實際移動游標。 (如果 IPrintOemUni::ImageProcessing 已移動 cursor.)

如果未設定,指定 Unidrv 應該更新其目前的數據指標位置計算,同時移動游標。

[out] piResult

接收方法提供的結果,從要求的新數據指標位置減去實際的新數據指標位置。 此值可能是零,但一律為非負值。

傳回值

方法必須傳回下列其中一個值。

傳回碼 描述
S_OK
作業成功。
E_FAIL
作業失敗。
E_NOTIMPL
此方法尚未實作。

備註

IPrintOemDriverUni::DrvXMoveToIPrintOemDriverUni::D rvYMoveTo 方法可讓轉譯外掛程式將影像數據傳送至印表機後台處理程式,而不會造成印表機驅動程式失去印表機游標位置的追蹤。 如果您提供 IPrintOemUni::ImageProcessing 方法,將影像資料直接傳送至列印後台處理程式,而不是將它傳回印表機驅動程式,此方法應該呼叫 IPrintOemDriverUni::DrvXMoveToIPrintOemDriverUni::DrvYMoveTo

兩種技術之一可用來更新數據指標位置:

  • 每當 IPrintOemUni::ImageProcessing 方法需要更新游標位置時,就可以呼叫 IPrintOemDriverUni::DrvXMoveToIPrintOemDriverUni::DrvYMoveTo ,並清除MV_UPDATE旗標。 這會導致 Unidrv 將游標命令傳送至列印後台處理程式,並更新其目前游標位置的內部計算。
  • IPrintOemUni::ImageProcessing 方法可以直接將游標命令傳送至列印後台處理程式來更新游標。 當方法完成其多任務緩衝處理作業時,可以呼叫 IPrintOemDriverUni::DrvXMoveTo 或 ,或 IPrintOemDriverUni::DrvYMoveTo 搭配設定MV_UPDATE旗標。 這會導致 Unidrv 更新目前游標位置的內部計算,而不需將游標命令傳送至列印後台處理程式。

規格需求

需求
目標平台 桌面
標頭 prcomoem.h (包括 Prcomoem.h)