Compartilhar via


Estrutura NEWTEXTMETRICA (wingdi.h)

A estrutura NEWTEXTMETRIC contém dados que descrevem uma fonte física.

Sintaxe

typedef struct tagNEWTEXTMETRICA {
  LONG  tmHeight;
  LONG  tmAscent;
  LONG  tmDescent;
  LONG  tmInternalLeading;
  LONG  tmExternalLeading;
  LONG  tmAveCharWidth;
  LONG  tmMaxCharWidth;
  LONG  tmWeight;
  LONG  tmOverhang;
  LONG  tmDigitizedAspectX;
  LONG  tmDigitizedAspectY;
  BYTE  tmFirstChar;
  BYTE  tmLastChar;
  BYTE  tmDefaultChar;
  BYTE  tmBreakChar;
  BYTE  tmItalic;
  BYTE  tmUnderlined;
  BYTE  tmStruckOut;
  BYTE  tmPitchAndFamily;
  BYTE  tmCharSet;
  DWORD ntmFlags;
  UINT  ntmSizeEM;
  UINT  ntmCellHeight;
  UINT  ntmAvgWidth;
} NEWTEXTMETRICA, *PNEWTEXTMETRICA, *NPNEWTEXTMETRICA, *LPNEWTEXTMETRICA;

Membros

tmHeight

A altura (ascensão + descida) dos caracteres.

tmAscent

A ascensão (unidades acima da linha base) dos caracteres.

tmDescent

A descida (unidades abaixo da linha base) dos caracteres.

tmInternalLeading

A quantidade de à esquerda (espaço) dentro dos limites definidos pelo membro tmHeight . Marcas de ênfase e outros caracteres diacríticos podem ocorrer nessa área. O designer pode definir esse membro como zero.

tmExternalLeading

A quantidade de extra à esquerda (espaço) que o aplicativo adiciona entre linhas. Como essa área está fora da fonte, ela não contém marcas e não é alterada por chamadas de saída de texto no modo OPAQUE ou TRANSPARENT. O designer pode definir esse membro como zero.

tmAveCharWidth

A largura média dos caracteres na fonte (geralmente definida como a largura da letra x). Esse valor não inclui a saliência necessária para caracteres em negrito ou itálico.

tmMaxCharWidth

A largura do caractere mais largo na fonte.

tmWeight

O peso da fonte.

tmOverhang

A largura extra por cadeia de caracteres que pode ser adicionada a algumas fontes sintetizadas. Ao sintetizar alguns atributos, como negrito ou itálico, a GDI (interface gráfica do dispositivo) ou um dispositivo pode ter que adicionar largura a uma cadeia de caracteres em uma base por caractere e por cadeia de caracteres. Por exemplo, a GDI torna uma cadeia de caracteres em negrito expandindo o espaçamento de cada caractere e ultrapassando por um valor de deslocamento; ele itálico uma fonte cortando a cadeia de caracteres. Em ambos os casos, há uma saliência além da cadeia de caracteres básica. Para cadeias de caracteres em negrito, a saliência é a distância pela qual o overstrike é deslocado. Para cadeias de caracteres itálicas, a saliência é a quantidade que a parte superior da fonte é ressarida após a parte inferior da fonte.

O membro tmOverhang permite que o aplicativo determine quanto da largura do caractere retornada por uma chamada de função GetTextExtentPoint32 em um único caractere é a largura real do caractere e quanto é a largura extra por cadeia de caracteres. A largura real é a extensão menos a saliência.

tmDigitizedAspectX

O aspecto horizontal do dispositivo para o qual a fonte foi projetada.

tmDigitizedAspectY

O aspecto vertical do dispositivo para o qual a fonte foi projetada. A proporção dos membros tmDigitizedAspectX e tmDigitizedAspectY é a taxa de proporção do dispositivo para o qual a fonte foi projetada.

tmFirstChar

O valor do primeiro caractere definido na fonte.

tmLastChar

O valor do último caractere definido na fonte.

tmDefaultChar

O valor do caractere a ser substituído por caracteres que não estão na fonte.

tmBreakChar

O valor do caractere a ser usado para definir quebras de palavra para justificativa de texto.

tmItalic

Uma fonte itálica se não for zero.

tmUnderlined

Uma fonte sublinhada se não for zero.

tmStruckOut

Uma fonte strikeout se for diferente de zero.

tmPitchAndFamily

O pitch e a família da fonte selecionada. O bit de ordem baixa (bit 0) especifica o tom da fonte. Se for 1, a fonte será o tom variável (ou proporcional). Se for 0, a fonte será fixa (ou monospace). Os bits 1 e 2 especificam o tipo de fonte. Se ambos os bits forem 0, a fonte será uma fonte raster; se o bit 1 for 1 e o bit 2 for 0, a fonte será uma fonte vetor; se o bit 1 for 0 e o bit 2 estiver definido ou se ambos os bits forem 1, a fonte será algum outro tipo. O bit 3 será 1 se a fonte for uma fonte de dispositivo; caso contrário, é 0.

Os quatro bits de alta ordem designam a família de fontes. O membro tmPitchAndFamily pode ser combinado com o valor hexadecimal 0xF0 usando o operador AND bit a bit e, em seguida, pode ser comparado com os nomes de família de fontes para uma correspondência idêntica. Para obter mais informações sobre as famílias de fontes, consulte LOGFONT.

tmCharSet

O conjunto de caracteres da fonte.

ntmFlags

Especifica se a fonte é itálica, sublinhada, descrita, em negrito e assim por diante. Pode ser qualquer combinação razoável dos valores a seguir.

bit Nome Significado
0 NTM_ITALIC itálico
5 NTM_BOLD negrito
8 NTM_REGULAR regular
16 NTM_NONNEGATIVE_AC nenhum glifo em uma fonte em qualquer tamanho tem um espaço negativo de A ou C.
17 NTM_PS_OPENTYPE Fonte OpenType do PostScript
18 NTM_TT_OPENTYPE Fonte TrueType OpenType
19 NTM_MULTIPLEMASTER fonte de vários master
20 NTM_TYPE1 Tipo 1 fonte
21 NTM_DSIG fonte com uma assinatura digital. Isso permite a rastreabilidade e garante que a fonte tenha sido testada e não esteja corrompida

ntmSizeEM

O tamanho do quadrado em para a fonte. Esse valor está em unidades noções (ou seja, as unidades para as quais a fonte foi projetada).

ntmCellHeight

A altura, em unidades nocionais, da fonte. Esse valor deve ser comparado com o valor do membro ntmSizeEM .

ntmAvgWidth

A largura média dos caracteres na fonte, em unidades nocionais. Esse valor deve ser comparado com o valor do membro ntmSizeEM .

Comentários

Os últimos quatro membros da estrutura NEWTEXTMETRIC não estão incluídos na estrutura TEXTMETRIC ; em todos os outros aspectos, as estruturas são idênticas.

Os tamanhos na estrutura NEWTEXTMETRIC normalmente são especificados em unidades lógicas; ou seja, eles dependem do modo de mapeamento atual do contexto de exibição.

Observação

O cabeçalho wingdi.h define NEWTEXTMETRIC como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

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]
Cabeçalho wingdi.h (inclua Windows.h)

Confira também

Enumfontfamilies

Estruturas de fonte e texto

Visão geral de fontes e texto

Gettextextentpoint32

Gettextmetrics

LOGFONT