다음을 통해 공유


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 반환합니다. 함수는 성공하지 못하면 0이 아닌 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 을 자주 호출하지 않아야 합니다. 함수는 ScriptItemize 또는 ScriptStringAnalyse 가 호출 될 때마다 호출하는 데 상당한 오버 헤드가 필요합니다. 대신 애플리케이션은 SCRIPT_DIGITSUBSTITUTE 구조를 저장하고 WM_SETTINGCHANGE 메시지를 받을 때만 업데이트할 수 있습니다. 또는 전용 스레드에서 RegNotifyChangeKeyValue 호출이 HKCU\제어판\International의 레지스트리 변경을 나타내는 경우 애플리케이션에서 구조를 업데이트할 수 있습니다.

중요 Windows 8부터: Windows 7에서 실행되는 기능을 유지하려면 Uniscribe를 사용하는 모듈에서 라이브러리 목록에서 gdi32.lib 전에 Usp10.lib를 지정해야 합니다.
 

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 usp10.h
라이브러리 Usp10.lib
DLL Usp10.dll

추가 정보

Uniscribe를 사용하여 텍스트 표시

SCRIPT_DIGITSUBSTITUTE

ScriptApplyDigitSubstitution

ScriptItemize

ScriptStringAnalyse

Uniscribe

Uniscribe 함수