共用方式為


ScriptRecordDigitSubstitution 函式 (usp10.h)

讀取國家語言支援 (NLS) 原生數位和數位替代設定,並將其記錄在 SCRIPT_DIGITSUBSTITUTE 結構中。 如需詳細資訊,請參閱 數位圖形

語法

HRESULT ScriptRecordDigitSubstitution(
  [in]  LCID                   Locale,
  [out] SCRIPT_DIGITSUBSTITUTE *psds
);

參數

[in] Locale

要查詢之地區設定的地區設定識別碼。 一般而言,應用程式應該將此參數設定為 LOCALE_USER_DEFAULT。 或者,設定可以指出與 LOCALE_NOUSEROVERRIDE 結合的特定地區設定,以取得預設設定。

[out] psds

SCRIPT_DIGITSUBSTITUTE結構的指標。 這個結構稍後可以傳遞至 ScriptApplyDigitSubstitution

傳回值

如果成功,則傳回S_OK。 如果函式未成功,函式會傳回非零 HRESULT 值。

錯誤傳回包括:

  • E_INVALIDARG。 Locale參數指出無效或未安裝的地區設定。
  • E_POINTER。 psds參數會設定為Null

備註

如需通常呼叫此函式的內容討論,請參閱 使用 Uniscribe 顯示文字

此函式僅支援阿拉伯文和俄文地區設定的內容數位替代。 針對其他地區設定,內容數位替代對應至無替代。

下列範例顯示呼叫此函式的一般方式。

SCRIPT_DIGITSUBSTITUTE sds;
ScriptRecordDigitSubstitution(LOCALE_USER_DEFAULT, &sds);

在每個專案化時,應用程式都可以使用結果,如下一個範例所示。

SCRIPT_CONTROL sc = {0};
SCRIPT_STATE   ss = {0};
ScriptApplyDigitSubstitution(&sds, &sc, &ss);

基於效能考慮,您的應用程式不應該經常呼叫 ScriptRecordDigitSubstitution 。 每次呼叫 ScriptItemizeScriptStringAnalyse 時,函式都需要相當多的額外負荷來呼叫它。 相反地,應用程式可以儲存 SCRIPT_DIGITSUBSTITUTE 結構,並只在收到 WM_SETTINGCHANGE 訊息時加以更新。 或者,當專用線程中的RegNotifyChangeKeyValue呼叫指出 HKCU\主控台\International 之下登錄中的變更時,應用程式可以更新結構。

重要 從 Windows 8 開始:若要維護在 Windows 7 上執行的能力,使用 Uniscribe 的模組必須在其程式庫清單中指定 Usp10.lib 之前,才能指定 Usp32.lib。
 

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 usp10.h
程式庫 Usp10.lib
Dll Usp10.dll

另請參閱

使用 Uniscribe 顯示文字

SCRIPT_DIGITSUBSTITUTE

ScriptApplyDigitSubstitution

ScriptItemize

ScriptStringAnalyse

Uniscribe

Uniscribe 函式