SCRIPT_CACHE
定義 Uniscribe 字型計量快取。
typedef void* SCRIPT_CACHE;
這是不透明的結構。 應用程式必須為每個使用的字元樣式配置並保留一個SCRIPT_CACHE變數。 變數必須初始化為 Null。
許多腳本函式會結合硬體裝置內容控制碼和SCRIPT_CACHE變數。 Uniscribe 第一次嘗試使用 SCRIPT_CACHE 變數來存取字型資料。 只有在尚未快取必要的資料時,才會檢查硬體裝置內容。
硬體裝置內容控制碼可以傳遞至 Uniscribe 作為 Null。 如果已快取 Uniscribe 所需的資料,則不會存取裝置內容,而且作業會正常繼續。
如果裝置內容傳遞為 Null ,且 Uniscribe 基於任何原因需要存取它,Uniscribe 會傳回錯誤碼E_PENDING。 此程式碼會快速傳回,讓應用程式避免進行耗時 的 SelectObject 呼叫。
下列範例適用于採用SCRIPT_CACHE變數的所有函式,以及硬體裝置內容的選擇性控制碼。
hr = ScriptShape(NULL, &sc,
pwcChars, cChars, cMaxGlyphs, psa, pwOutGlyphs, pwLogClust, psva, pcGlyphs);
if (hr == E_PENDING)
{
// ... select font into hdc ...
hr = ScriptShape(hdc, &sc,
pwcChars, cChars, cMaxGlyphs, psa, pwOutGlyphs, pwLogClust, psva, pcGlyphs);
}
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限傳統型應用程式] |
標頭 |
|