ScriptLayout 関数 (usp10.h)
実行 埋め込みレベル の配列を、ビジュアルから論理への位置または論理から視覚的な位置のマップに変換します。
構文
HRESULT ScriptLayout(
[in] int cRuns,
[in] const BYTE *pbLevel,
[out, optional] int *piVisualToLogical,
[out, optional] int *piLogicalToVisual
);
パラメーター
[in] cRuns
処理する実行の数。
[in] pbLevel
実行埋め込みレベルを含む 、cRuns で示される長さの配列へのポインター。 行のすべての実行の埋め込みレベルは、論理的に順序付けして含める必要があります。 詳細については、「解説」を参照してください。
[out, optional] piVisualToLogical
cRuns によって示される長さの配列へのポインター。この関数は、視覚的な順序に並べ替えた実行埋め込みレベルを取得します。 最初の配列要素は、左端に表示する実行を表し、後続のエントリは左から右に進んで表示されます。 関数は、出力がない場合にこのパラメーターを NULL に 設定します。
[out, optional] piLogicalToVisual
この関数が視覚的な実行位置を取得する cRuns で示される長さの配列へのポインター。 最初の配列要素は、最初の論理実行を表示する必要がある相対ビジュアル位置で、左端の表示位置は 0 です。 関数は、出力がない場合にこのパラメーターを NULL に 設定します。
戻り値
処理が正常に終了した場合は 0 を返します。 関数は、成功しない場合は 0 以外の HRESULT 値を返します。 アプリケーションでは、 SUCCEEDED マクロと FAILED マクロを使用して戻り値をテストできます。
注釈
この関数が通常呼び出されるコンテキストについては、「 Uniscribe でテキストを表示 する」を参照してください。
この関数は、1 行のテキストに関連するデータのみを処理します。
実行埋め込みレベルは、Unicode 双方向アルゴリズムで定義されます。 これらは、実行の方向、それが埋め込まれるすべての実行の方向、および段落の方向を記述します。 この関数の呼び出しに他の入力は必要ありません。 詳細については、「 Unicode」を参照してください。
次の表に、定義済みの埋め込みレベルを示します。 アプリケーションは、必要に応じてレベルを追加できます。
レベル | 意味 |
---|---|
0 | 左から右への段落の左から右への実行。 |
1 | 左から右の段落の左から右への実行に埋め込まれた右から左への実行。 または、右から左への段落に、別の実行に埋め込まれていない右から左への実行です。 |
2 | 型 1 の右から左への実行に埋め込まれた左から右への実行。 |
3 | タイプ 2 の左から右への実行に埋め込まれた右から左への実行。 |
"論理位置" とは、他の実行に対する実行の相対位置を指します。 これはバッキング ストア内の位置であり、ユーザーがテキストを読み上げる順序に対応します。 実行の "視覚的な位置" とは、実行の可能な方向を考慮して、実行を視覚的に行に表示する方法を指します。
アプリケーションは、この関数設定 を piLogicalToVisual または piVisualToLogical、またはその両方を呼び出すことができます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | usp10.h |
Library | Usp10.lib |
[DLL] | Usp10.dll |
再頒布可能パッケージ | Windows Me/98/95 のインターネット エクスプローラー 5 以降 |