包含腳本狀態資訊。
語法
typedef struct tag_SCRIPT_STATE {
WORD uBidiLevel : 5;
WORD fOverrideDirection : 1;
WORD fInhibitSymSwap : 1;
WORD fCharShape : 1;
WORD fDigitSubstitute : 1;
WORD fInhibitLigate : 1;
WORD fDisplayZWG : 1;
WORD fArabicNumContext : 1;
WORD fGcpClusters : 1;
WORD fReserved : 1;
WORD fEngineReserved : 2;
} SCRIPT_STATE;
Members
uBidiLevel
根據 Unicode 雙向演算法,所有字元在相關執行中與所有字元相關的嵌入層級。 當應用程式將此結構傳給 ScriptItemize 時,該成員應被初始化為 0(由左至右的基底嵌入層級),或將 1 初始化為從右到左的基底嵌入層級。
fOverrideDirection
初始覆寫方向值,指示腳本是否使用覆寫層級(字串中的 LRO 或 RLO 代碼)。 可能的數值定義於下表。 在覆寫關卡中,角色只會朝一個方向排列,從左到右或從右到左。 不會改變數字順序或相反方向的強字元。 請注意,此值會被字串中的 LRE、RLE、LRO 或 RLO 代碼重置。
| 價值觀 | Meaning |
|---|---|
|
使用反映嵌入層級的覆蓋層級。 |
|
不要使用反映嵌入層級的覆蓋層級。 |
fInhibitSymSwap
值表示 shapeing 引擎是否繞過了 Unicode 鏡像字形的鏡像,例如括號。 可能的數值定義於下表。 此成員由 Unicode 字元的 ISS 設定,並由 ASS 清除。
| 價值觀 | Meaning |
|---|---|
|
Unicode 鏡像字形的繞過鏡像。 |
|
不要繞過 Unicode 鏡像字形的鏡像。 |
fCharShape
未實作。 值指示 Unicode 中阿拉伯語呈現表單區域中是否應塑造字元代碼。 可能的數值定義於下表。
| 價值觀 | Meaning |
|---|---|
|
Unicode 阿拉伯語呈現表單區的形狀字元代碼。 |
|
請勿在 Unicode 的阿拉伯語呈現表單區域中塑造字元代碼。 |
fDigitSubstitute
此成員提供與舊有實作中可能透過已棄用的 Unicode 字元 U+206E NATIONAL DIGIT SHAPES(NADS)及 U+206F 名義數字形狀(NODS)相同的數字替換行為控制。 可能的數值定義於下表。
| 價值觀 | Meaning |
|---|---|
|
字元代碼 U+0030 至 U+0039 會被國家數字取代。 |
|
字元代碼 U+0030 至 U+0039 不被國家數字取代。 |
fInhibitLigate
價值標示是否在阿拉伯字母或希伯來字母的塑造中使用連字。 可能的數值定義於下表。
| 價值觀 | Meaning |
|---|---|
|
在塑造阿拉伯語或希伯來字母時,請勿使用連字。 |
|
在塑造阿拉伯語或希伯來字母時使用連字。 |
fDisplayZWG
值表示不可顯示控制字元是否被塑造成需要重新排序的語言的表示字形,或根據字元在單字中位置的不同字形形狀。 可能的數值定義於下表。 通常,字元不會顯示出來。 它們會依照空白字形形狀,並賦予寬度為 0。
| 價值觀 | Meaning |
|---|---|
|
形狀控制角色作為代表性的符文。 |
|
不要把形狀控制角色當作代表性的符號。 |
fArabicNumContext
值用以指示先前強字符是否為阿拉伯語,符合規則P0的目的,該規則在Unicode標準2.0版中有所討論。 可能的數值定義於下表。 在阿拉伯語中,從右到左段落列舉前,該成員通常應設為 TRUE ,否則設為 FALSE 。
| 價值觀 | Meaning |
|---|---|
|
根據規則P0,之前強力角色視為阿拉伯人。 |
|
在規則P0的目的下,不要將先前強力角色視為阿拉伯人。 |
fGcpClusters
僅限於 GetCharacterPlacement 的舊版支援。 值表示 ScriptShape 應如何產生 pwLogCllust 指示的陣列。 可能的數值定義於下表。 此成員僅適用於阿拉伯語和希伯來語項目。
| 價值觀 | Meaning |
|---|---|
|
產生陣列的方式和 GetCharacterPlacement 一樣。 |
|
不要像 GetCharacterPlacement 那樣產生陣列。 |
fReserved
保留的;始終初始化為 0。
fEngineReserved
保留的;始終初始化為 0。
備註
此結構用於初始化 Unicode 演算法狀態作為 ScriptItemize 的輸入。 它也被用作 ScriptItemize 所檢索分析的組件。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
| 支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
| Header | USP10.h |
| 可再發行 | Windows Me/98/95 上的 Internet Explorer 5 或更新版本 |