次の方法で共有


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;

Members

uBidiLevel

Unicode 双方向アルゴリズムに従って、関連付けられた実行内のすべての文字に関連付けられている埋め込みレベル。 アプリケーションがこの構造体を ScriptItemize に渡す場合、このメンバーは、左から右への基本埋め込みレベルでは 0、右から左への基本埋め込みレベルでは 1 に初期化する必要があります。

fOverrideDirection

スクリプトでオーバーライド レベル (文字列内の LRO または RLO コード) を使用するかどうかを示す初期オーバーライド方向の値。 使用可能な値は、次の表に定義されています。 オーバーライド レベルの場合、文字は左から右または右から左のどちらか一方向にのみレイアウトされます。 数字の並べ替えや、反対方向の強い文字の並べ替えは行われません。 この値は、文字列内の LRE、RLE、LRO、または RLO コードによってリセットされることに注意してください。

価値 Meaning
TRUE
埋め込みレベルを反映するオーバーライド レベルを使用します。
FALSE
埋め込みレベルを反映するオーバーライド レベルは使用しないでください。

fInhibitSymSwap

整形エンジンが Unicode ミラー化されたグリフ (角かっこなど) のミラーリングをバイパスするかどうかを示す値。 使用可能な値は、次の表に定義されています。 このメンバーは Unicode 文字 ISS によって設定され、ASS によってクリアされます。

価値 Meaning
TRUE
Unicode ミラー化されたグリフのミラーリングをバイパスします。
FALSE
Unicode ミラー化されたグリフのミラーリングをバイパスしないでください。

fCharShape

実装されていません。 Unicode のアラビア語プレゼンテーション フォーム領域の文字コードを整形する必要があるかどうかを示す値。 使用可能な値は、次の表に定義されています。

価値 Meaning
TRUE
Unicode のアラビア語プレゼンテーション フォーム領域の図形文字コード。
FALSE
Unicode のアラビア語表示フォーム領域で文字コードを整形しないでください。

fDigitSubstitute

このメンバーは、現在非推奨の Unicode 文字 U+206E NATIONAL DIGIT SHAPES ("NADS") と U+206F NOMINAL DIGIT SHAPES ("NODS") を使用して、レガシ実装で取得された可能性のある桁置換動作を制御します。 使用可能な値は、次の表に定義されています。

価値 Meaning
TRUE
文字コード U+0030 ~ U+0039 は、各国の数字で置き換えます。
FALSE
文字コード U+0030 から U+0039 は、各国の数字で置き換えされません。

fInhibitLigate

アラビア語またはヘブライ語の文字の整形で合字が使用されているかどうかを示す値。 使用可能な値は、次の表に定義されています。

価値 Meaning
TRUE
アラビア語やヘブライ語の文字の整形には合字を使用しないでください。
FALSE
アラビア語またはヘブライ語の文字を整形する場合は合字を使用します。

fDisplayZWG

表示できないコントロール文字が、単語内の文字の位置に応じて、並べ替えまたは異なるグリフ図形を必要とする言語の表現グリフとして整形されているかどうかを示す値。 使用可能な値は、次の表に定義されています。 通常、文字は表示されません。 これらは空白のグリフに整形され、幅が 0 になります。

価値 Meaning
TRUE
図形コントロール文字を表現グリフとして使用します。
FALSE
コントロール文字を表現グリフとして整形しないでください。

fArabicNumContext

Unicode 標準バージョン 2.0 で説明されているように、以前の強力な文字がルール P0 の目的でアラビア語かどうかを示す値。 使用可能な値は、次の表に定義されています。 通常、このメンバーは、アラビア語で右から左に段落を項目化する前に TRUE に設定し、それ以外の場合は FALSE に設定する必要があります。

価値 Meaning
TRUE
ルール P0 の目的で、以前の強力な文字をアラビア語と考えてください。
FALSE
ルール P0 の目的で、以前の強力な文字をアラビア語と見なさないでください。

fGcpClusters

GetCharacterPlacement レガシ サポートの場合のみ。 ScriptShapepwLogClust で示す配列を生成する方法を示す値。 使用可能な値は、次の表に定義されています。 このメンバーは、アラビア語とヘブライ語の項目にのみ影響します。

価値 Meaning
TRUE
GetCharacterPlacement と同じ方法で配列を生成します。
FALSE
GetCharacterPlacement と同じ方法で配列を生成しないでください。

fReserved

引っ込み思案;常に 0 に初期化します。

fEngineReserved

引っ込み思案;常に 0 に初期化します。

注釈

この構造体は、 ScriptItemize への入力として Unicode アルゴリズムの状態を初期化するために使用されます。 ScriptItemize によって取得される分析のコンポーネントとしても使用されます。

Requirements

Requirement 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header usp10.h
再頒布可能 Windows Me/98/95 の Internet Explorer 5 以降

こちらも参照ください

ScriptItemize

ScriptShape

Uniscribe

Uniscribe 構造体