共用方式為


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

指定腳本的標準化四個字元代碼。

注意 這些只包含一般 Unicode 腳本,而不包含任何額外的 ISO 15924 腳本以進行書目區分。
 

isoScriptNumber

標準化數值程式碼,範圍介於 0-999。

clusterLookahead

要預估複雜字集外觀的字元數。 拉丁文和所有假名通常是 1。 索引腳本最多可達 15 個,而其他大部分則是 8 個。

注意 結合標記和變化選取器可能會產生比這些向前查看更長的叢集,因此此估計值會被視為一般語言使用。 讀音符號必須明確測試。
 

justificationCharacter

適當的字元,將指定的腳本加長以取得理由。 例如:

  • 阿拉伯文 - U+0640 Tatweel
  • Ogham - U+1680 Ogham Space Mark

restrictCaretToClusters

將插入號限制為整個叢集,例如泰文和 Devanagari。 根據預設,阿拉伯文之類的腳本允許在叢集之間流覽。 其他類似泰文的叢集一律會流覽整個叢集。

usesWordDividers

語言會使用分隔符號,例如拉丁文或 Epic 文字空間之間的空格。 範例包括拉丁文、希臘文、Devanagari 和 Epicpic。 排除中文、韓文和泰文。

isDiscreteWriting

字元是彼此的離散單位。 這包括區塊腳本和叢集腳本。 範例包括拉丁文、希臘文、斯拉夫文、希伯來文、中文和泰文。

isBlockWriting

語言是區塊腳本,會在字元之間展開。 範例包括中文、日文、韓文和卡裡文。

isDistributedWithinCluster

語言在字元叢集內對齊,而不只是字元叢集之間,例如泰文 Lu 和 Sara Am (U+E026、U+E033) 的字元序列,這形成單一叢集,但仍會在兩者之間展開。 範例包括泰文、寮文和高美文。

isConnectedWriting

腳本的叢集會彼此連線 (,例如比較基準連結的 Devanagari) ,而且不會在字元之間新增分隔。

注意 阿拉伯文等大寫連結的腳本也會 (連線,但並非所有連接的腳本都是大寫的) 。
 
範例包括 Devanagari、阿拉伯文、愛爾蘭文、Bengala、Gurmukhi 和 Ogham。 排除拉丁文、中文和 Thaana。

isCursiveWriting

腳本自然會 (阿拉伯文和阿拉伯文和阿拉伯文) ,這表示它會使用其他理由方法,例如 kashida 擴充功能,而不是字元間距。

注意 雖然拉丁文和日文等其他腳本實際上可能支援手寫大寫形式,但不會被視為大寫的腳本。
 
範例包括阿拉伯文、阿拉伯文、阿拉伯文、阿拉伯文和阿拉伯文。 排除 Thaana、Devanagari、拉丁和中文。

reserved

保留

需求

   
最低支援的用戶端 適用于 Windows 7 的 Windows 8 和平臺更新 [僅限傳統型應用程式]
最低支援的伺服器 適用于 Windows Server 2008 R2 的 Windows Server 2012 和平臺更新 [僅限桌面應用程式]
標頭 dwrite_1.h

另請參閱

IDWriteTextAnalyzer1::GetScriptProperties