IPrintOemDriverUni::D rvYMoveTo 方法 (prcomoem.h)
unidrv 驅動程式會提供 IPrintOemDriverUni::DrvYMoveTo
方法,讓 轉譯外掛程式 可以通知驅動程式游標 y 位置變更。
語法
HRESULT DrvYMoveTo(
PDEVOBJ pdevobj,
INT y,
DWORD dwFlags,
[out] OUT INT *piResult
);
參數
pdevobj
DEVOBJ 結構的呼叫端提供的指標。
y
呼叫端提供的值,代表數據指標應該移動的單位數。 單位是由 dwFlags中的MV_GRAPHICS旗標所定義。
dwFlags
下列一或多個呼叫端提供的位旗標:
旗 | 定義 |
---|---|
MV_GRAPHICS |
如果設定,y 參數的值會根據印表機目前的解析度以點表示。 例如,如果 y 解析度為 150 DPI,且 y 為 75,則移動為 ?? 英寸。
如果未設定,y 參數的值會以主要單位表示。 例如,如果 y 主要單位為 600,且 y y 為 300,則移動為 ?? 英寸。 |
MV_PHYSICAL |
如果設定,y 參數的值會相對於數據指標原點。
如果未設定,y 參數的值會相對於可列印區域的原點。 如果設定MV_RELATIVE,則無法設定。 |
MV_RELATIVE |
如果設定,則指定數據指標應該從目前位置移動 y 單位。
如果未設定,則指定數據指標應該從原點移動 y 單位。 |
MV_UPDATE |
如果設定,則指定 Unidrv 應該更新其目前的數據指標位置計算,而不會實際行動數據指標。 (如果 IPrintOemUni::ImageProcessing 已移動游標,則應該設定 。 如果未設定,則指定 Unidrv 應該更新其目前資料指標位置的計算,同時移動數據指標。 |
[out] piResult
接收從要求的新數據指標位置減去實際新數據指標位置的方法提供結果。 此值可能為零,但一律為非負值。
傳回值
方法必須傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
作業成功。 |
|
作業失敗。 |
|
未實作 方法。 |
言論
IPrintOemDriverUni::D rvXMoveTo 和 IPrintOemDriverUni::DrvYMoveTo
方法可讓轉譯外掛程式將圖像數據傳送至印表機多任務緩衝處理器,而不會造成印表機驅動程式失去印表機游標位置的追蹤。 如果您提供 IPrintOemUni::ImageProcessing 方法,將影像資料直接傳送至列印後台處理程式,而不是將它傳回印表機驅動程式,則 方法應該呼叫 IPrintOemDriverUni::DrvXMoveTo
並 IPrintOemDriverUni::DrvYMoveTo
。
這兩種技術之一可用於更新數據指標位置:
-
每當 IPrintOemUni::ImageProcessing 方法需要更新游標位置時,就可以呼叫已清除MV_UPDATE旗標
IPrintOemDriverUni::DrvXMoveTo
或IPrintOemDriverUni::DrvYMoveTo
。 這會導致 Unidrv 將游標命令傳送至列印後台處理程式,並更新其目前游標位置的內部計算。 -
IPrintOemUni::ImageProcessing 方法可以藉由將游標命令直接傳送至列印後台處理程式來更新游標。 當方法完成其多任務緩衝處理作業時,可以使用設定MV_UPDATE旗標來呼叫
IPrintOemDriverUni::DrvXMoveTo
或IPrintOemDriverUni::DrvYMoveTo
。 這會導致 Unidrv 更新目前資料指標位置的內部計算,而不會將游標命令傳送至列印後台處理程式。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | prcomoem.h (include Prcomoem.h) |