Função ScriptRecordDigitSubstitution (usp10.h)

Lê as configurações de substituição de dígitos e dígitos nativos do NLS (Suporte à Linguagem Nacional) e registra-as em uma estrutura de SCRIPT_DIGITSUBSTITUTE . Para obter mais informações, consulte Digit Shapes.

Sintaxe

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

Parâmetros

[in] Locale

Identificador de localidade da localidade a ser consultada. Normalmente, o aplicativo deve definir esse parâmetro como LOCALE_USER_DEFAULT. Como alternativa, a configuração pode indicar uma localidade específica combinada com LOCALE_NOUSEROVERRIDE para obter as configurações padrão.

[out] psds

Ponteiro para uma estrutura SCRIPT_DIGITSUBSTITUTE . Essa estrutura pode ser passada posteriormente para ScriptApplyDigitSubstitution.

Valor retornado

Retorna S_OK se tiver êxito. A função retornará um valor HRESULT diferente de zero se não for bem-sucedida.

Os retornos de erro incluem:

  • E_INVALIDARG. O parâmetro Locale indica uma localidade inválida ou não instalada.
  • E_POINTER. O parâmetro psds é definido como NULL.

Comentários

Consulte Exibindo texto com Uniscribe para ver uma discussão sobre o contexto no qual essa função normalmente é chamada.

Essa função dá suporte à substituição de dígito de contexto somente para localidades árabes e persas. Para outras localidades, a substituição de dígito de contexto é mapeada para nenhuma substituição.

O exemplo a seguir mostra a maneira típica de chamar essa função.

SCRIPT_DIGITSUBSTITUTE sds;
ScriptRecordDigitSubstitution(LOCALE_USER_DEFAULT, &sds);

A cada itemização, o aplicativo pode usar os resultados, conforme mostrado no próximo exemplo.

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

Por motivos de desempenho, seu aplicativo não deve chamar ScriptRecordDigitSubstitution com frequência. A função requer uma sobrecarga considerável para chamá-la sempre que ScriptItemize ou ScriptStringAnalyse for chamado. Em vez disso, o aplicativo pode salvar a estrutura SCRIPT_DIGITSUBSTITUTE e atualizá-la somente quando uma mensagem de WM_SETTINGCHANGE é recebida. Como alternativa, o aplicativo pode atualizar a estrutura quando uma chamada RegNotifyChangeKeyValue em um thread dedicado indica uma alteração no registro em HKCU\Painel de Controle\International.

Importante A partir do Windows 8: para manter a capacidade de execução no Windows 7, um módulo que usa Uniscribe deve especificar Usp10.lib antes de gdi32.lib em sua lista de bibliotecas.
 

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho usp10.h
Biblioteca Usp10.lib
DLL Usp10.dll

Confira também

Exibindo texto com Uniscribe

SCRIPT_DIGITSUBSTITUTE

ScriptApplyDigitSubstitution

Scriptitemize

Scriptstringanalyse

Uniscribe

Funções Uniscribe