TextOutA 函式 (wingdi.h)
TextOut 函式會使用目前選取的字型、背景色彩和文字色彩,在指定的位置寫入字元字串。
語法
BOOL TextOutA(
[in] HDC hdc,
[in] int x,
[in] int y,
[in] LPCSTR lpString,
[in] int c
);
參數
[in] hdc
裝置內容的句柄。
[in] x
系統用來對齊字串之參考點的 x 座標,以邏輯座標表示。
[in] y
系統用來對齊字串之參考點的 Y 座標,以邏輯座標表示。
[in] lpString
要繪製之字串的指標。 字串不需要以零結束,因為 cchString 會指定字串的長度。
[in] c
傳回值
如果函式成功,則傳回值為非零值。
如果函式失敗,傳回值為零。
言論
參考點的解譯取決於目前的文字對齊模式。 應用程式可以藉由呼叫 GetTextAlign 函式來擷取此模式;應用程式可以藉由呼叫 SetTextAlign 函式來改變此模式。 您可以使用下列值進行文字對齊。 只有一個旗標可以從影響水準和垂直對齊的旗標中選擇。 此外,只能選擇改變目前位置的兩個旗標之一。
根據預設,此函式不會使用或更新目前的位置。 不過,應用程式可以呼叫
當 TextOut 函式放在路徑括弧內時,系統會為包含每個字元及其字元方塊的 TrueType 文字產生路徑。 產生的區域是字元方塊減去文字,而不是文字本身。 您可以將背景模式設定為透明,再將 TextOut 函式放在路徑括弧中,以取得 TrueType 文字外框所包圍的區域。 以下是示範此程式的範例程序代碼。
// Obtain the window's client rectangle
GetClientRect(hwnd, &r);
// THE FIX: by setting the background mode
// to transparent, the region is the text itself
// SetBkMode(hdc, TRANSPARENT);
// Bracket begin a path
BeginPath(hdc);
// Send some text out into the world
TCHAR text[ ] = "Defenestration can be hazardous";
TextOut(hdc,r.left,r.top,text, ARRAYSIZE(text));
// Bracket end a path
EndPath(hdc);
// Derive a region from that path
SelectClipPath(hdc, RGN_AND);
// This generates the same result as SelectClipPath()
// SelectClipRgn(hdc, PathToRegion(hdc));
// Fill the region with grayness
FillRect(hdc, &r, GetStockObject(GRAY_BRUSH));
例子
如需範例,請參閱 列舉已安裝的字型。
注意
wingdi.h 標頭會將 TextOut 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | wingdi.h (包括 Windows.h) |
連結庫 | Gdi32.lib |
DLL | Gdi32.dll |