Partilhar via


Atributos Text-Formatting

Um aplicativo pode usar seis funções para definir os atributos de formatação de texto para um contexto de dispositivo: SetBkColor, SetBkMode, SetTextAlign, SetTextCharacterExtra, SetTextColor e SetTextJustification. Essas funções afetam o alinhamento do texto, o espaçamento entre caracteres, a justificativa do texto e as cores do texto e da tela de fundo. Além disso, outras seis funções podem ser usadas para recuperar os atributos de formatação de texto atuais para qualquer contexto de dispositivo: GetBkColor, GetBkMode, GetTextAlign, GetTextCharacterExtra, GetTextColor e GetTextExtentPoint32.

Alinhamento de texto

Os aplicativos podem usar a função SetTextAlign para especificar como o sistema deve posicionar os caracteres em uma cadeia de caracteres de texto quando eles chamam uma das funções de desenho. Essa função pode ser usada para posicionar títulos, números de página, textos explicativos e assim por diante. O sistema posiciona uma cadeia de caracteres de texto alinhando um ponto de referência em um retângulo imaginário que envolve a cadeia de caracteres, com a posição atual do cursor ou com um ponto passado como argumento para uma das funções de desenho de texto. A função SetTextAlign permite que o aplicativo especifique o local desse ponto de referência. Veja a seguir uma lista dos possíveis locais de ponto de referência.

Location Descrição
esquerda/inferior O ponto de referência está localizado no canto inferior esquerdo do retângulo.
linha esquerda/base O ponto de referência está localizado na interseção da linha base caractere-célula e na borda esquerda do retângulo.
esquerda/superior O ponto de referência está localizado no canto superior esquerdo do retângulo.
centro/inferior O ponto de referência está localizado no centro da parte inferior do retângulo.
linha central/base O ponto de referência está localizado na interseção da linha base caractere-célula e no centro do retângulo.
centro/superior O ponto de referência está localizado no centro da parte superior do retângulo.
direita/inferior O ponto de referência está localizado no canto inferior direito do retângulo.
linha direita/base O ponto de referência está localizado na interseção da linha base caractere-célula e na borda direita do retângulo.
direita/superior O ponto de referência está localizado no canto superior direito do retângulo.

 

A ilustração a seguir mostra uma cadeia de caracteres de texto desenhada chamando a função TextOut . Antes de desenhar o texto, a função SetTextAlign foi chamada para realocar o ponto de referência em cada um dos nove locais possíveis.

ilustração mostrando o mesmo texto nove vezes, uma para cada possível local do ponto de referência

O alinhamento de texto padrão para um contexto de dispositivo é o canto superior esquerdo do retângulo imaginário que envolve o texto. Um aplicativo pode recuperar a configuração de alinhamento de texto atual para qualquer contexto de dispositivo chamando a função GetTextAlign .

Espaçamento entre caracteres

Os aplicativos podem usar a função SetTextCharacterExtra para alterar o espaçamento entre caracteres para todas as operações de saída de texto em um contexto de dispositivo especificado. A ilustração a seguir mostra uma cadeia de caracteres de texto desenhada duas vezes chamando a função TextOut . Antes de desenhar o texto na segunda vez, a função SetTextCharacterExtra foi chamada para incrementar o espaçamento entre caracteres.

ilustração que contém o mesmo texto duas vezes: primeiro com espaçamento de intercaracter normal e, em seguida, com espaçamento mais amplo

O valor de espaçamento de intercaracter padrão para qualquer contexto de dispositivo é zero. Um aplicativo pode recuperar o valor de espaçamento de intercaracter atual para um contexto de dispositivo chamando a função GetTextCharacterExtra .

Justificativa de texto

Os aplicativos podem usar as funções GetTextExtentPoint32 e SetTextJustification para justificar uma linha de texto. A justificativa de texto é uma operação comum em qualquer publicação de área de trabalho e na maioria dos aplicativos de processamento de palavras. A função GetTextExtentPoint32 calcula a largura e a altura de uma cadeia de caracteres de texto. Depois que a largura for computada, o aplicativo poderá chamar a função SetTextJustification para distribuir espaçamento extra entre cada uma das palavras em uma linha de texto. A ilustração a seguir mostra um parágrafo de texto impresso duas vezes: no primeiro parágrafo, o texto não foi justificado; no segundo parágrafo, o texto foi justificado chamando as funções GetTextExtentPoint32 e SetTextJustification .

ilustração mostrando um parágrafo que se alinha apenas à esquerda e, em seguida, o mesmo parágrafo alinhado à esquerda e à direita

Cor do texto e da tela de fundo

Os aplicativos podem usar a função SetTextColor para definir a cor do texto desenhado na área do cliente de suas janelas, bem como a cor do texto desenhado em uma impressora colorida. Um aplicativo pode usar a função SetBkColor para definir a cor que aparece atrás de cada caractere e a função SetBkMode para especificar como o sistema deve combinar a cor da tela de fundo selecionada com a cor atual ou as cores na exibição do vídeo.

A cor do texto padrão para um contexto de dispositivo de exibição é preta; a cor padrão da tela de fundo é branca; e o modo de tela de fundo padrão é OPACO. Um aplicativo pode recuperar a cor do texto atual para um contexto de dispositivo chamando a função GetTextColor . Um aplicativo pode recuperar a cor da tela de fundo atual para um contexto de dispositivo chamando a função GetBkColor e o modo de fundo atual chamando a função GetBkMode .