使用成形引擎

Uniscribe 使用多個成形引擎,其中包含特定腳本的配置知識。 它也會利用 OpenType 版面配置成形引擎來處理字型特定的腳本功能,例如字元產生、範圍測量和斷詞支援。 Uniscribe 會使用 Unicode 雙向演算法來管理雙向字元重新排序,並瞭解阿拉伯文、希伯來文和泰文的非 OpenType 版面配置字型格式。

由於指派給每個成形引擎的確切程式碼點範圍可能會有所不同,因此不會發佈腳本編號,但SCRIPT_UNDEFINED除外。 不過,您的應用程式可以藉由呼叫 ScriptGetProperties 函式來測試腳本的屬性,以存取全域腳本屬性資料表。 應用程式可以使用全域腳本屬性,協助結合自己的版面配置規則與必要的成形引擎部門。

應用程式會使用 ScriptShape 函式的呼叫來存取成形引擎。 所有複雜的腳本成形引擎、數位成形引擎,以及 ASCII 成形引擎會先驗證裝置內容控制碼中指出的字型,再成形。 複雜字集必須使用 ScriptItemize 函式傳回的腳本來成形,才能辨識。 如果SCRIPT_ANALYSIS結構的eScript成員中指定了SCRIPT_UNDEFINED,其他執行仍可辨識,雖然它們可能會失去印刷品質。

如果成功,ScriptShape會傳回 0,如果應用程式所提供的字型未包含足夠的圖像或成形表格,則傳回 USP_E_SCRIPT_NOT_IN_FONT。 如果應用程式指定SCRIPT_UNDEFINED,且字型不支援某些字元,函式仍會成功。 在此情況下,應用程式應該掃描圖像輸出緩衝區中是否有遺漏的字元。 如需處理遺漏字元的策略,請參閱 使用字型後援

使用 Uniscribe