Compartir a través de


Estructura NEWTEXTMETRICA (wingdi.h)

La estructura de NEWTEXTMETRIC contiene datos que describen una fuente física.

Sintaxis

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;

Miembros

tmHeight

Alto (ascenso + descenso) de caracteres.

tmAscent

Ascenso (unidades por encima de la línea base) de caracteres.

tmDescent

Descenso (unidades por debajo de la línea base) de caracteres.

tmInternalLeading

Cantidad de espacio inicial (espacio) dentro de los límites establecidos por el miembro tmHeight. Las marcas de énfasis y otros caracteres diacríticos pueden producirse en esta área. El diseñador puede establecer este miembro en cero.

tmExternalLeading

Cantidad de espacio inicial adicional que la aplicación agrega entre filas. Dado que este área está fuera de la fuente, no contiene marcas y no se modifica mediante llamadas de salida de texto en modo OPAQUE o TRANSPARENT. El diseñador puede establecer este miembro en cero.

tmAveCharWidth

Ancho medio de caracteres en la fuente (generalmente definido como el ancho de la letra x). Este valor no incluye el voladizo necesario para caracteres en negrita o cursiva.

tmMaxCharWidth

Ancho del carácter más ancho de la fuente.

tmWeight

Peso de la fuente.

tmOverhang

Ancho adicional por cadena que se puede agregar a algunas fuentes sintetizadas. Al sintetizar algunos atributos, como negrita o cursiva, la interfaz de dispositivo gráfico (GDI) o un dispositivo puede tener que agregar ancho a una cadena tanto por carácter como por cadena. Por ejemplo, GDI convierte una cadena en negrita expandiendo el espaciado de cada carácter y sobrestribando por un valor de desplazamiento; italiza una fuente quitando el cordón de la cadena. En cualquier caso, hay un voladizo más allá de la cadena básica. Para las cadenas en negrita, el voladizo es la distancia por la que se desplaza el overstrike. En el caso de las cadenas en cursiva, el voladizo es la cantidad en la que se quita la parte superior de la fuente más allá de la parte inferior de la fuente.

El miembro tmOverhang permite a la aplicación determinar la cantidad del ancho de caracteres devuelto por una llamada de función GetTextExtentPoint3 2 en un solo carácter es el ancho real de caracteres y cuánto es el ancho adicional por cadena. El ancho real es la extensión menos el voladizo.

tmDigitizedAspectX

Aspecto horizontal del dispositivo para el que se diseñó la fuente.

tmDigitizedAspectY

Aspecto vertical del dispositivo para el que se diseñó la fuente. La relación de los miembros de tmDigitizedAspectX y tmDigitizedAspectY es la relación de aspecto del dispositivo para el que se diseñó la fuente.

tmFirstChar

Valor del primer carácter definido en la fuente.

tmLastChar

Valor del último carácter definido en la fuente.

tmDefaultChar

Valor del carácter que se va a sustituir por caracteres que no están en la fuente.

tmBreakChar

Valor del carácter que se va a usar para definir saltos de palabra para la justificación de texto.

tmItalic

Fuente cursiva si no es cero.

tmUnderlined

Fuente subrayada si no es cero.

tmStruckOut

Fuente de tachado si no es cero.

tmPitchAndFamily

Tono y familia de la fuente seleccionada. El bit de orden bajo (bit 0) especifica el tono de la fuente. Si es 1, la fuente es de tono variable (o proporcional). Si es 0, la fuente es de tono fijo (o monoespacio). Los bits 1 y 2 especifican el tipo de fuente. Si ambos bits son 0, la fuente es una fuente ráster; si el bit 1 es 1 y el bit 2 es 0, la fuente es una fuente vectorial; si el bit 1 es 0 y el bit 2 está establecido, o si ambos bits son 1, la fuente es de otro tipo. El bit 3 es 1 si la fuente es una fuente del dispositivo; de lo contrario, es 0.

Los cuatro bits de orden superior designan la familia de fuentes. El miembro tmPitchAndFamily se puede combinar con el valor hexadecimal 0xF0 mediante el operador AND bit a bit y, a continuación, se puede comparar con los nombres de familia de fuentes para una coincidencia idéntica. Para obtener más información sobre las familias de fuentes, consulte LOGFONT.

tmCharSet

Juego de caracteres de la fuente.

ntmFlags

Especifica si la fuente es cursiva, subrayado, resaltado, negrita, etc. Puede ser cualquier combinación razonable de los valores siguientes.

Bit Nombre Significado
0 NTM_ITALIC itálico
5 NTM_BOLD audaz
8 NTM_REGULAR regular
16 NTM_NONNEGATIVE_AC ningún glifo en una fuente de cualquier tamaño tiene un espacio A o C negativo.
17 NTM_PS_OPENTYPE Fuente OpenType postScript
18 NTM_TT_OPENTYPE Fuente TrueType OpenType
19 NTM_MULTIPLEMASTER fuente maestra múltiple
20 NTM_TYPE1 Fuente de tipo 1
21 NTM_DSIG fuente con una firma digital. Esto permite la rastreabilidad y garantiza que la fuente se ha probado y no está dañada.

ntmSizeEM

Tamaño del cuadrado em para la fuente. Este valor está en unidades notionales (es decir, las unidades para las que se diseñó la fuente).

ntmCellHeight

Alto, en unidades notionales, de la fuente. Este valor debe compararse con el valor del miembro ntmSizeEM.

ntmAvgWidth

Ancho medio de caracteres en la fuente, en unidades notionales. Este valor debe compararse con el valor del miembro ntmSizeEM.

Observaciones

Los cuatro últimos miembros de la estructura de NEWTEXTMETRIC no se incluyen en la estructura TEXTMETRIC de ; en todos los demás aspectos, las estructuras son idénticas.

Los tamaños de la estructura NEWTEXTMETRIC se especifican normalmente en unidades lógicas; es decir, dependen del modo de asignación actual del contexto de visualización.

Nota

El encabezado wingdi.h define NEWTEXTMETRIC como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
encabezado de wingdi.h (incluya Windows.h)

Consulte también

EnumFontFamilies

estructuras de fuente y texto

de información general de fuentes y texto de

GetTextExtentPoint32

GetTextMetrics de

LOGFONT