Enumeração StringFormatFlags (gdiplusenums.h)

A enumeração StringFormatFlags especifica informações de layout de texto (como orientação e recorte) e manipulações de exibição (como inserção de reticências, substituição de dígito e representação de caracteres que não têm suporte de uma fonte).

Syntax

typedef enum StringFormatFlags {
  StringFormatFlagsDirectionRightToLeft = 0x00000001,
  StringFormatFlagsDirectionVertical = 0x00000002,
  StringFormatFlagsNoFitBlackBox = 0x00000004,
  StringFormatFlagsDisplayFormatControl = 0x00000020,
  StringFormatFlagsNoFontFallback = 0x00000400,
  StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
  StringFormatFlagsNoWrap = 0x00001000,
  StringFormatFlagsLineLimit = 0x00002000,
  StringFormatFlagsNoClip = 0x00004000,
  StringFormatFlagsBypassGDI = 0x80000000
} ;

Constantes

 
StringFormatFlagsDirectionRightToLeft
Valor: 0x00000001
Especifica que a ordem de leitura é da direita para a esquerda. Para texto horizontal, os caracteres são lidos da direita para a esquerda. Para texto vertical, as colunas são lidas da direita para a esquerda. Por padrão, o texto horizontal ou vertical é lido da esquerda para a direita.
StringFormatFlagsDirectionVertical
Valor: 0x00000002
Especifica que linhas individuais de texto são desenhadas verticalmente no dispositivo de exibição. Por padrão, as linhas de texto são horizontais, cada nova linha abaixo da linha anterior.
StringFormatFlagsNoFitBlackBox
Valor: 0x00000004
Especifica que partes de caracteres têm permissão para substituir o retângulo de layout da cadeia de caracteres. Por padrão, os caracteres são alinhados primeiro dentro dos limites do retângulo, em seguida, todos os caracteres que ainda sobrepõem os limites são reposicionados para evitar qualquer sobrecarga e, assim, evitar afetar pixels fora do retângulo de layout. Uma letra em itálico e minúscula F (f) é um exemplo de um caractere que pode ter partes pendentes. Definir esse sinalizador garante que o caractere se alinhe visualmente com as linhas acima e abaixo, mas pode fazer com que partes de caracteres, que estão fora do retângulo de layout, sejam recortadas ou pintadas.
StringFormatFlagsDisplayFormatControl
Valor: 0x00000020
Especifica que os caracteres de controle de layout Unicode são exibidos com um caractere representativo.
StringFormatFlagsNoFontFallback
Valor: 0x00000400
Especifica que uma fonte alternativa é usada para caracteres que não têm suporte na fonte solicitada. Por padrão, todos os caracteres ausentes são exibidos com o caractere "fontes ausentes", geralmente um quadrado aberto.
StringFormatFlagsMeasureTrailingSpaces
Valor: 0x00000800
Especifica que o espaço no final de cada linha está incluído em uma medida de cadeia de caracteres. Por padrão, o retângulo de limite retornado pelo
O método Graphics::MeasureString exclui o espaço no final de cada linha. Defina esse sinalizador para incluir esse espaço na medida.
StringFormatFlagsNoWrap
Valor: 0x00001000
Especifica que a disposição do texto para a próxima linha está desabilitada. NoWrap é implícito quando um ponto de origem é usado em vez de um retângulo de layout. Ao desenhar texto dentro de um retângulo, por padrão, o texto é quebrado no último limite de palavra que está dentro do limite do retângulo e encapsulado para a próxima linha.
StringFormatFlagsLineLimit
Valor: 0x00002000
Especifica que apenas linhas inteiras são dispostas no retângulo de layout. Por padrão, o layout continua até o final do texto ou até que não haja mais linhas visíveis como resultado do recorte, o que ocorrer primeiro. As configurações padrão permitem que a última linha seja parcialmente obscurecida por um retângulo de layout que não é um múltiplo inteiro da altura da linha. Para garantir que apenas linhas inteiras sejam vistas, defina esse sinalizador e tenha cuidado para fornecer um retângulo de layout pelo menos tão alto quanto a altura de uma linha.
StringFormatFlagsNoClip
Valor: 0x00004000
Especifica que os caracteres que substituem o retângulo de layout e o texto que se estende fora do retângulo de layout têm permissão para serem exibidos. Por padrão, todos os caracteres pendentes e texto que se estendem fora do retângulo de layout são recortados. Todos os espaços à direita (espaços que estão no final de uma linha) que se estendem para fora do retângulo de layout são recortados. Portanto, a configuração desse sinalizador terá um efeito em uma medida de cadeia de caracteres se espaços à direita estiverem sendo incluídos na medida. Se o recorte estiver habilitado, os espaços à direita que se estendem para fora do retângulo de layout não serão incluídos na medida. Se o recorte estiver desabilitado, todos os espaços à direita serão incluídos na medida, independentemente de estarem fora do retângulo de layout.
StringFormatFlagsBypassGDI
Valor: 0x80000000

Comentários

Vários conjuntos de sinalizadores podem produzir efeitos combinados:

  • Quando StringFormatFlagsDirectionVertical e StringFormatFlagsDirectionRightToLeft são definidas, linhas individuais de texto são desenhadas verticalmente. A primeira linha começa na borda direita do retângulo de layout; a segunda linha de texto está à esquerda da primeira linha e assim por diante.
  • Quando StringFormatFlagsDirectionVertical é definido e StringFormatFlagsDirectionRightToLeft não está definido, linhas individuais de texto são desenhadas verticalmente. A primeira linha começa na borda esquerda do retângulo de layout; a segunda linha de texto está à direita da primeira linha.
  • Quando StringFormatFlagsDirectionRightToLeft está definido e StringFormatFlagsDirectionVertical não está definido, as linhas individuais de texto são horizontais e a ordem de leitura é da direita para a esquerda. Essa configuração não altera a ordem na qual os caracteres são exibidos, apenas especifica a ordem na qual os caracteres podem ser lidos.
Os sinalizadores StringFormatFlagsDirectionVertical e StringFormatFlagsDirectionRightToLeft podem afetar o alinhamento da cadeia de caracteres.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho gdiplusenums.h (inclua Gdiplus.h)

Confira também

Métodos DrawString

Formatação de texto

Métodos MeasureString

Stringalignment

Stringdigitsubstitute

StringFormat::SetFormatFlags

Stringtrimming