共用方式為


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

unidrv 驅動程式會提供 IPrintOemDriverUni::DrvUniTextOut 方法,讓使用裝置管理的繪圖介面的轉譯外掛程式可以輕鬆地輸出文字字串。

語法

HRESULT DrvUniTextOut(
  SURFOBJ  *pso,
  STROBJ   *pstro,
  FONTOBJ  *pfo,
  CLIPOBJ  *pco,
  RECTL    *prclExtra,
  RECTL    *prclOpaque,
  BRUSHOBJ *pboFore,
  BRUSHOBJ *pboOpaque,
  POINTL   *pptlBrushOrg,
  MIX      mix
);

參數

pso

SURFOBJ 的指標 結構,描述要寫入的介面。

pstro

STROBJ 結構的指標 定義要轉譯的字元,以及放置圖像的位置。

pfo

FONTOBJ 的指標 結構,從中擷取字型及其字元的相關信息。

pco

CLIPOBJ 結構的指標,該結構會定義所有轉譯都必須完成的剪輯區域。 驅動程式不會影響剪輯區域以外的任何圖元。

prclExtra

RECTL 結構的指標。 GDI 一律會將此參數設定為呼叫此函式時 NULL。 驅動程式應該忽略它。

prclOpaque

代表單一不透明矩形之 RECTL 結構的指標。 這個矩形是右下角獨佔。 此矩形內的圖元(不是前景且未裁剪的圖元)會以不透明筆刷呈現。 這個矩形一律會系結要繪製的文字。 如果此參數 NULL,則不會轉譯不透明的圖元。

pboFore

代表要用於前景圖元之筆刷物件的 BRUSHOBJ 結構的指標。 此筆刷一律為純色筆刷。

pboOpaque

代表不透明圖元的 BRUSHOBJ 結構的指標。 此筆刷的前景和背景混合模式都假設為R2_COPYPEN。 除非驅動程式在 deVINFO 結構的 flGraphicsCaps 成員中設定GCAPS_ARBRUSHOPAQUE功能位,否則一律會以純色筆刷呼叫。

pptlBrushOrg

指向 POINTL 結構的指標,該結構會定義兩個筆刷的筆刷原點。

mix

pboFore的前景和背景點陣作業(混合模式)。

傳回值

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

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

言論

IPrintOemDriverUni::DrvUniTextOut 方法是由 Unidrv 提供,以供轉譯支援裝置管理繪圖介面的外掛程式使用。 這類轉譯外掛程式必須攔截 Unidrv 的 DrvTextOut 函式,而 IPrintOemDriverUni::DrvUniTextOut 方法應該從該連結函式呼叫。 攔截函式必須執行文字區域裁剪和文字旋轉作業。 然後,它可以呼叫 IPrintOemDriverUni::DrvUniTextOut,要求 Unidrv 使用可下載的字型建立文字字串(以及執行字元型裁剪)。

如果 IPrintOemDriverUni::DrvUniTextOut 無法建立文字字串,可能是因為字型無法使用或旋轉,它會呼叫轉譯外掛程式的 IPrintOemUni::TextOutAsBitmap 方法,此方法會將文字字串繪製為位圖。

如需詳細資訊,請參閱 處理 Device-Managed Surfaces

要求

要求 價值
目標平臺 桌面
標頭 prcomoem.h (include Prcomoem.h)