GetFontData 函式 (wingdi.h)
GetFontData 函式會擷取 TrueType 字型的字型計量數據。
語法
DWORD GetFontData(
[in] HDC hdc,
[in] DWORD dwTable,
[in] DWORD dwOffset,
[out] PVOID pvBuffer,
[in] DWORD cjBuffer
);
參數
[in] hdc
裝置內容的句柄。
[in] dwTable
要從中擷取字型數據的字型計量數據表名稱。 此參數可以識別 Microsoft Corporation 所發行 TrueType 字型檔案規格中所記載的其中一個計量數據表。 如果此參數為零,則會從 TrueType 字型檔案的檔案開頭,或從目前針對 TrueType 集合檔案選取字型的數據開頭擷取資訊。 若要從 TrueType 集合檔案的檔案開頭擷取數據,請指定 'ttcf' (0x66637474) 。
[in] dwOffset
從字型計量數據表的開頭到函式應該開始擷取資訊的位置的位移。 如果此參數為零,則會從 dwTable 參數所指定的數據表開頭擷取資訊。 如果此值大於或等於數據表的大小,就會發生錯誤。
[out] pvBuffer
接收字型信息的緩衝區指標。 如果此參數為 NULL,函式會傳回字型數據所需的緩衝區大小。
[in] cjBuffer
要擷取之資訊的長度,以位元組為單位。 如果此參數為零, GetFontData 會傳回 dwTable 參數中指定的數據大小。
傳回值
如果函式成功,傳回值就是傳回的位元組數。
如果函式失敗,傳回值會GDI_ERROR。
備註
此函式是用來透過字型操作應用程式直接從字型檔案擷取 TrueType 字型資訊。 如需內嵌字型的詳細資訊,請參閱字型 內嵌參考。
應用程式有時可以使用 GetFontData 函式,以檔案儲存 TrueType 字型。 若要這樣做,應用程式會檢查 OUTLINETEXTMETRIC 結構的 otmfsType 成員,判斷是否可以內嵌字型。 如果 已設定 otmfsType 的位 1,則字型不允許內嵌。 如果位 1 清楚,字型可以內嵌。 如果設定位 2,則內嵌是唯讀的。 如果允許內嵌,應用程式可以擷取整個字型檔案,併為 dwTable、 dwOffset 和 cbData 參數指定零。
如果應用程式嘗試使用此函式來擷取非 TrueType 字型的資訊,就會發生錯誤。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wingdi.h (包含 Windows.h) |
程式庫 | Gdi32.lib |
Dll | Gdi32.dll |