SCRIPT_STATE 结构 (usp10.h)
包含脚本状态信息。
语法
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;
成员
uBidiLevel
根据 Unicode 双向算法,嵌入与关联运行中的所有字符关联的级别。 当应用程序将此结构传递给 ScriptItemize 时,对于从左到右的基嵌入级别,此成员应初始化为 0,对于从右到左的基嵌入级别,应初始化为 1。
fOverrideDirection
初始重写方向值,指示脚本是否在字符串) 中使用替代级别 (LRO 或 RLO 代码。 下表中定义了可能的值。 对于替代级别,字符仅在一个方向上布局,从左到右或从右到左。 不会对相反方向的数字或强字符重新排序。 请注意,此值由字符串中的 LRE、RLE、LRO 或 RLO 代码重置。
值 | 含义 |
---|---|
|
使用反映嵌入级别的替代级别。 |
|
请勿使用反映嵌入级别的替代级别。 |
fInhibitSymSwap
指示整形引擎是否绕过 Unicode 镜像字形(例如括号)的镜像的值。 下表中定义了可能的值。 此成员由 Unicode 字符 ISS 设置,并由 ASS 清除。
值 | 含义 |
---|---|
|
绕过 Unicode 镜像字形的镜像。 |
|
不要绕过 Unicode 镜像字形的镜像。 |
fCharShape
未实现。 指示是否应调整 Unicode 的阿拉伯文演示文稿窗体区域中的字符代码的值。 下表中定义了可能的值。
值 | 含义 |
---|---|
|
Unicode 的阿拉伯语演示文稿窗体区域中的形状字符代码。 |
|
不要在 Unicode 的阿拉伯语演示文稿窗体区域中塑造字符代码。 |
fDigitSubstitute
此成员提供对旧版实现中可能获取的数字替换行为的相同控制,使用现已弃用的 Unicode 字符 U+206E NATIONAL DIGIT SHAPES (“NADS”) 和 U+206F 名义数字形状 (“NODS”) 。 下表中定义了可能的值。
值 | 含义 |
---|---|
|
字符代码 U+0030 到 U+0039 由国家/地区数字替换。 |
|
字符代码 U+0030 到 U+0039 不会替换为国家/地区数字。 |
fInhibitLigate
指示在阿拉伯文或希伯来语字符的塑造中使用连字的值。 下表中定义了可能的值。
值 | 含义 |
---|---|
|
请勿在调整阿拉伯语或希伯来语字符时使用连字。 |
|
在塑造阿拉伯语或希伯来语字符时使用连字。 |
fDisplayZWG
指示不可显示控件字符是否被塑造为需要重新排序的语言的表示形式标志符号或不同的字形,具体取决于字符在单词中的位置的值。 下表中定义了可能的值。 通常不显示字符。 它们的形状为空白字形,宽度为 0。
值 | 含义 |
---|---|
|
形状控制字符作为表示形式字形。 |
|
不要将控件字符塑造为表示形式字形。 |
fArabicNumContext
指示先前强字符是否为阿拉伯语的值,用于规则 P0,如 Unicode 标准版本 2.0 中所述。 下表中定义了可能的值。 在阿拉伯文中从右到左段落的项化之前,通常应将此成员设置为 TRUE ,否则应设置为 FALSE 。
值 | 含义 |
---|---|
|
出于规则 P0 的目的,将以前的强字符视为阿拉伯语。 |
|
出于规则 P0 的目的,请勿将以前的强字符视为阿拉伯语。 |
fGcpClusters
仅适用于 GetCharacterPlacement 旧版支持。 指示 ScriptShape 应如何生成 由 pwLogClust 指示的数组的值。 下表中定义了可能的值。 此成员仅影响阿拉伯语和希伯来语项。
值 | 含义 |
---|---|
|
生成数组的方式与 GetCharacterPlacement 相同。 |
|
生成数组的方式与 GetCharacterPlacement 的方式不同。 |
fReserved
保留;始终初始化为 0。
fEngineReserved
保留;始终初始化为 0。
注解
此结构用于初始化 Unicode 算法状态作为 ScriptItemize 的输入。 它还用作 ScriptItemize 检索的分析的组件。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | usp10.h |
可再发行组件 | Internet Explorer 5 或更高版本Windows Me/98/95 |