Compartilhar via


Função ScriptLayout (usp10.h)

Converte uma matriz de níveis de inserção de execução em um mapa de posição visual para lógica e/ou posição lógica para visual.

Sintaxe

HRESULT ScriptLayout(
  [in]            int        cRuns,
  [in]            const BYTE *pbLevel,
  [out, optional] int        *piVisualToLogical,
  [out, optional] int        *piLogicalToVisual
);

Parâmetros

[in] cRuns

Número de execuções a serem processadas.

[in] pbLevel

Ponteiro para uma matriz, de comprimento indicado por cRuns, que contém níveis de inserção de execução. Os níveis de inserção para todas as execuções na linha devem ser incluídos, ordenados logicamente. Para obter mais informações, consulte a seção Comentários.

[out, optional] piVisualToLogical

Ponteiro para uma matriz, de comprimento indicado por cRuns, no qual essa função recupera os níveis de inserção de execução reordenados para a ordem visual. O primeiro elemento de matriz representa a execução a ser exibida na extrema esquerda e as entradas subsequentes devem ser exibidas progredindo da esquerda para a direita. A função define esse parâmetro como NULL se não houver saída.

[out, optional] piLogicalToVisual

Ponteiro para uma matriz, de comprimento indicada por cRuns, na qual essa função recupera as posições de execução visual. O primeiro elemento de matriz é a posição visual relativa em que a primeira execução lógica deve ser exibida, sendo a posição de exibição mais à esquerda 0. A função define esse parâmetro como NULL se não houver saída.

Retornar valor

Retorna 0 se for bem-sucedido. A função retornará um valor HRESULT diferente de zero se não for bem-sucedida. O aplicativo pode testar o valor retornado com as macros SUCCEEDED e FAILED .

Comentários

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

Essa função manipula apenas os dados que pertencem a uma única linha de texto.

Os níveis de inserção de execução são definidos no algoritmo bidirecional Unicode. Eles descrevem a direção de uma execução, a direção de qualquer execução na qual ela é inserida e a direção do parágrafo. Nenhuma outra entrada é necessária para a chamada para essa função. Para obter mais informações, consulte Unicode.

A tabela a seguir lista os níveis de inserção predefinidos. O aplicativo pode adicionar níveis conforme necessário.

Nível Significado
0 Uma execução da esquerda para a direita em um parágrafo da esquerda para a direita.
1 Uma execução da direita para a esquerda inserida em uma execução da esquerda para a direita em um parágrafo da esquerda para a direita. Como alternativa, uma execução da direita para a esquerda, não inserida em outra execução, em um parágrafo da direita para a esquerda.
2 Uma execução da esquerda para a direita inserida em uma execução da direita para a esquerda do tipo 1.
3 Uma execução da direita para a esquerda inserida em uma execução da esquerda para a direita do tipo 2.
 

Uma "posição lógica" refere-se ao posicionamento de uma execução em relação a outras execuções. É a posição em um repositório de backup e corresponde à ordem em que o usuário lê o texto em voz alta. A "posição visual" de uma execução refere-se à maneira como a execução é exibida visualmente na linha, levando em conta as possíveis direções que a execução pode ter.

O aplicativo pode chamar essa configuração de função piLogicalToVisual ou piVisualToLogical ou ambas.

Importante Começando com 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

Requisito Valor
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
Redistribuível Internet Explorer 5 ou posterior no Windows Me/98/95

Confira também

Exibindo texto com Uniscribe

Uniscribe

Funções Uniscribe