Função GetTabbedTextExtentA (winuser.h)
A função GetTabbedTextExtent calcula a largura e a altura de uma cadeia de caracteres. Se a cadeia de caracteres contiver um ou mais caracteres de guia, a largura da cadeia de caracteres será baseada nas paradas de tabulação especificadas. A função
Sintaxe
DWORD GetTabbedTextExtentA(
[in] HDC hdc,
[in] LPCSTR lpString,
[in] int chCount,
[in] int nTabPositions,
[in] const INT *lpnTabStopPositions
);
Parâmetros
[in] hdc
Um identificador para o contexto do dispositivo.
[in] lpString
Um ponteiro para uma cadeia de caracteres.
[in] chCount
O comprimento da cadeia de texto. Para a função ANSI é uma contagem BYTE e para a função Unicode é uma contagem de WORD. Observe que, para a função ANSI, os caracteres nas páginas de código SBCS levam um byte cada, enquanto a maioria dos caracteres nas páginas de código DBCS leva dois bytes; para a função Unicode, a maioria dos caracteres Unicode definidos no momento (aqueles no Plano Multilíngue Básico (BMP)) são um WORD, enquanto os substitutos unicode são dois WORDs.
[in] nTabPositions
O número de posições de parada de tabulação na matriz apontada pelo parâmetro lpnTabStopPositions.
[in] lpnTabStopPositions
Um ponteiro para uma matriz que contém as posições de parada de tabulação, em unidades de dispositivo. As paradas de tabulação devem ser classificadas em ordem crescente; o menor valor x deve ser o primeiro item na matriz.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será as dimensões da cadeia de caracteres em unidades lógicas. A altura está na palavra de alta ordem e a largura está na palavra de ordem baixa.
Se a função falhar, o valor retornado será 0. GetTabbedTextExtent falhará se hDC for inválido e se nTabPositions for menor que 0.
Observações
A região de recorte atual não afeta a largura e a altura retornadas pela função getTabbedTextExtent
Como alguns dispositivos não colocam caracteres em matrizes de células regulares (ou seja, eles kern os caracteres), a soma das extensões dos caracteres em uma cadeia de caracteres pode não ser igual à extensão da cadeia de caracteres.
Se o parâmetro nTabPositions for zero e o parâmetro lpnTabStopPositions for NULL, as guias serão expandidas para oito vezes a largura média do caractere.
Se nTabPositions for 1, as paradas de tabulação serão separadas pela distância especificada pelo primeiro valor na matriz à qual lpnTabStopPositions pontos.
Nota
O cabeçalho winuser.h define GetTabbedTextExtent como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winuser.h (inclua Windows.h) |
biblioteca | User32.lib |
de DLL |
User32.dll |
Consulte também
tabbedTextOut