Share via


DWRITE_SCRIPT_PROPERTIES構造体 (dwrite_1.h)

DWRITE_SCRIPT_PROPERTIES構造体は、キャレット ナビゲーションと理由のスクリプト プロパティを指定します。

構文

struct DWRITE_SCRIPT_PROPERTIES {
  UINT32 isoScriptCode;
  UINT32 isoScriptNumber;
  UINT32 clusterLookahead;
  UINT32 justificationCharacter;
  UINT32 restrictCaretToClusters : 1;
  UINT32 usesWordDividers : 1;
  UINT32 isDiscreteWriting : 1;
  UINT32 isBlockWriting : 1;
  UINT32 isDistributedWithinCluster : 1;
  UINT32 isConnectedWriting : 1;
  UINT32 isCursiveWriting : 1;
  UINT32 reserved : 25;
};

メンバー

isoScriptCode

指定されたスクリプトの標準化された 4 文字コード。

メモ これらには一般的な Unicode スクリプトのみが含まれます。文献目録の区別のための追加の ISO 15924 スクリプトは含まれません。
 

isoScriptNumber

0 から 999 の範囲の標準化された数値コード。

clusterLookahead

複雑なスクリプトの先行予測を見積もる文字数。 ラテン語とカナはすべて一般的に 1 です。 Indic スクリプトは最大 15 個、それ以外のほとんどのスクリプトは 8 です。

メモ マークとバリエーション セレクターを組み合わせると、これらの先読みよりも長いクラスターが生成される可能性があるため、この見積もりは一般的な言語使用と見なされます。 分音記号は、明示的に個別にテストする必要があります。
 

justificationCharacter

正当な理由のために指定されたスクリプトを細長くするための適切な文字。 次に例を示します。

  • アラビア語 - U+0640 タットウェル
  • オガム - U+1680 オガムスペースマーク

restrictCaretToClusters

キャレットを、タイ語やデバナガリなどのクラスター全体に制限します。 既定では、アラビア語などのスクリプトでは、クラスター間のナビゲーションが許可されます。 タイ語のような他の人は、常にクラスター全体を移動します。

usesWordDividers

言語では、ラテン語またはエチオピック語間のスペースなど、単語間の区切り記号が使用されます。 例としては、ラテン語、ギリシャ語、デバナガリ、エチオピックなどがあります。 中国語、韓国語、タイ語は除外されます。

isDiscreteWriting

文字は互いに不連続の単位です。 これには、ブロック スクリプトとクラスター化されたスクリプトの両方が含まれます。 たとえば、ラテン語、ギリシャ語、キリル文字、ヘブライ語、中国語、タイ語などです。

isBlockWriting

言語はブロック スクリプトであり、文字間を展開します。 たとえば、中国語、日本語、韓国語、ボポモフォなどがあります。

isDistributedWithinCluster

言語はグリフ クラスター内で正当化されます。たとえば、タイ語 Lu と Sara Am (U+E026、U+E033) の文字シーケンスなど、グリフ クラスター間だけでなく、1 つのクラスターを形成しますが、その間は引き続き拡張されます。 たとえば、タイ語、ラオス語、クメール語などです。

isConnectedWriting

スクリプトのクラスターは相互に接続され (ベースラインにリンクされた Devanagari など)、文字間に分離は追加されません。

メモ アラビア語のような筆記体でリンクされたスクリプトも接続されています (ただし、接続されているすべてのスクリプトが筆記体ではありません)。
 
例としては、デバナガリ、アラビア語、シリア語、バンガロール、グルムキ、オガムなどがあります。 ラテン、中国語、ターナは除外されます。

isCursiveWriting

スクリプトは自然に筆記体 (アラビア語とシリア語) です。つまり、文字間の間隔ではなく、kashida 拡張などの他の正当な理由メソッドを使用します。

メモ ラテン語や日本語などの他のスクリプトは、実際には手書きの筆記体をサポートしている可能性がありますが、筆記体とは見なされません。
 
例としては、アラビア語、シリア語、モンゴル語などがあります。 Thaana、Devanagari、Latin、および Chinese は除外されます。

reserved

予約済み

要件

   
サポートされている最小のクライアント Windows 8 および Windows 7 用プラットフォーム更新プログラム [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 および Windows Server 2008 R2 用プラットフォーム更新プログラム [デスクトップ アプリのみ]
Header dwrite_1.h

関連項目

IDWriteTextAnalyzer1::GetScriptProperties