共用方式為


CreateFontIndirectA 函式 (wingdi.h)

CreateFontIndirect 函式會建立具有指定特性的邏輯字型。 之後可以將字型選取為任何裝置內容的目前字型。

語法

HFONT CreateFontIndirectA(
  [in] const LOGFONTA *lplf
);

參數

[in] lplf

定義邏輯字型特性之 LOGFONT 結構的指標。

傳回值

如果函式成功,傳回值就是邏輯字型的句柄。

如果函式失敗,則傳回值 NULL

言論

CreateFontIndirect 函式會建立邏輯字型,其中包含 LOGFONT 結構 中指定的特性。 使用 SelectObject 函式選取此字型時,GDI 的字型對應程式會嘗試比對邏輯字型與現有的實體字型。 如果找不到完全相符專案,它會提供一個替代專案,其特性會盡可能符合許多要求的特性。

若要在操作系統的不同語言版本上取得適當的字型,請呼叫 EnumFontFamiliesEx,並具有LOGFONT 結構中所需字型特性的 EnumFontFamiliesEx,擷取適當的字型名稱,並使用 createFont 或 CreateFontIndirect建立 字型。

當您不再需要字型時,請呼叫 DeleteObject 函式加以刪除。

許多東亞語言的字型有兩個字樣名稱:英文名稱和當地語系化名稱。 CreateFontCreateFontIndirect 只會在符合語言的系統地區設定上取得當地語系化字樣名稱,而在所有其他系統地區設定上採用英文字樣名稱。 最好的方法是嘗試一個名稱,並在失敗時嘗試另一個名稱。 請注意,EnumFontsEnumFontFamilies,如果系統地區設定不符合字型語言,EnumFontFamiliesEx 會傳回英文字型名稱。

CreateFont的字型對應程式、CreateFontIndirectCreateFontIndirectEx 可辨識英文和當地語系化字樣名稱,不論地區設定為何。

例子

如需範例,請參閱 建立邏輯字型

注意

wingdi.h 標頭會根據 UNICODE 預處理器常數的定義,將 CreateFontIndirect 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 wingdi.h (包括 Windows.h)
連結庫 Gdi32.lib
DLL Gdi32.dll

另請參閱

CreateFont

CreateFontIndirectEx

DeleteObject

EnumFontFamilies

EnumFontFamiliesEx

EnumFonts

字型和文字函式

字型和文字概觀

LOGFONT

SelectObject