使用 ScriptString 函式
對於處理未格式化文字的應用程式,Uniscribe 會提供 ScriptString* 函式。 這些函式類似於 ExtTextOut、DrawText和 GetTextExtent,但是它們提供完整的複雜腳本支援,包括光標放置。 這些函式與其他 Uniscribe 函式類似,但專為純文本處理更簡單的需求量身打造。
下表詳述 ScriptString* 函式和其他 Uniscribe 函式中的任何對應專案。
功能 | 描述 |
---|---|
ScriptStringAnalyse | 分析純文字。 此函式對應至下列函式: |
ScriptStringCPtoX | 取得字元位置的 x 座標。 此功能對應至 ScriptCPtoX。 |
ScriptStringFree | 釋放 SCRIPT_STRING_ANALYSIS 資料結構。 |
ScriptStringGetLogicalWidths | 將視覺寬度轉換為邏輯寬度。 此函式會對應至 scriptGetLogicalWidths。 |
ScriptStringGetOrder | 將字元圖像的位置映射為類似於 GetCharacterPlacement的方式,僅供舊版本使用。 此函式不適用於每個程式代碼點產生多個字元的腳本。 |
ScriptStringOut | 顯示純文字。 這個函式會對應至 scriptTextOut 。 |
ScriptString_pcOutChars | 傳回一個指標,指向被截短純文字字串的長度。 |
ScriptString_pLogAttr | 傳回已分析純文字字串之邏輯屬性緩衝區的指標。 |
ScriptString_pSize | 針對分析的純文本字串,傳回大小(寬度和高度)的指標。 |
ScriptStringValidate | 識別指定文稿中無效的程式代碼點序列。 此函式與 ScriptGetCMap不同,它會識別字型中沒有的程式代碼點。 |
ScriptStringXtoCP | 將 x 座標轉換成字元位置。 此函式會對應至 scriptXtoCP。 |
若要只顯示純文本而不進行任何修改,應用程式應該呼叫 ScriptStringAnalyse、ScriptStringOut,然後 ScriptStringFree。 其他函式用於在顯示之前修改純文字。
相關主題