Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Define los atributos de una fuente.
Syntax
typedef struct tagLOGFONTA {
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
CHAR lfFaceName[32];
} LOGFONTA;
Members
lfHeight
Tipo: LONG
Especifica el alto, en unidades lógicas, de la celda o carácter de carácter de la fuente. El valor de alto del carácter (también conocido como alto em) es el valor de alto de celda de caracteres menos el valor inicial interno. El asignador de fuentes interpreta el valor especificado en lfHeight de la siguiente manera.
| Importancia | Description |
|---|---|
| > 0 | El asignador de fuentes transforma este valor en unidades de dispositivo y lo compara con el alto de celda de las fuentes disponibles. |
| 0 | El asignador de fuentes usa un valor de alto predeterminado cuando busca una coincidencia. |
| < 0 | El asignador de fuentes transforma este valor en unidades de dispositivo y coincide con su valor absoluto con el alto de caracteres de las fuentes disponibles. |
Para todas las comparaciones de alto, el asignador de fuentes busca la fuente más grande que no supera el tamaño solicitado.
Esta asignación se produce cuando la fuente se usa por primera vez.
Para el modo de asignación de MM_TEXT, puede usar la fórmula siguiente para especificar un alto para una fuente con un tamaño de punto determinado.
lfHeight = -MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72);
donde MulDiv se define de la siguiente manera:
#define MulDiv(a,b,c) (((a)*(b))/(c))
lfWidth
Tipo: LONG
Especifica el ancho medio, en unidades lógicas, de caracteres de la fuente. Si lfWidth no es cero, la relación de aspecto del dispositivo se compara con la relación de aspecto de digitalización de las fuentes disponibles para encontrar la coincidencia más cercana, determinada por el valor absoluto de la diferencia.
lfEscapement
Tipo: LONG
Especifica el ángulo, en décimas de grados, entre el vector de escape y el eje X del dispositivo. El vector de escape es paralelo a la línea base de una fila de texto.
El miembro lfEscapement especifica tanto el escape como la orientación. Debe establecer lfEscapement y lfOrientation en el mismo valor.
lfOrientation
Tipo: LONG
Especifica el ángulo, en décimas de grados, entre la línea base de cada carácter y el eje X del dispositivo.
lfWeight
Tipo: LONG
Especifica el peso de la fuente en el intervalo de 0 a 1000. Por ejemplo, 400 es normal y 700 está en negrita. Si este valor es cero, se usa un peso predeterminado.
Los siguientes valores se definen en Wingdi.h para mayor comodidad.
| Importancia | Weight |
|---|---|
| FW_DONTCARE | 0 |
| FW_THIN | 100 |
| FW_EXTRALIGHT | 200 |
| FW_ULTRALIGHT | 200 |
| FW_LIGHT | 300 |
| FW_NORMAL | 400 |
| FW_REGULAR | 400 |
| FW_MEDIUM | 500 |
| FW_SEMIBOLD | 600 |
| FW_DEMIBOLD | 600 |
| FW_BOLD | 700 |
| FW_EXTRABOLD | 800 |
| FW_ULTRABOLD | 800 |
| FW_HEAVY | 900 |
| FW_BLACK | 900 |
lfItalic
Tipo: BYTE
TRUE para especificar una fuente cursiva.
lfUnderline
Tipo: BYTE
TRUE para especificar una fuente subrayada.
lfStrikeOut
Tipo: BYTE
TRUE para especificar una fuente de tachado.
lfCharSet
Tipo: BYTE
Especifica el juego de caracteres. Los siguientes valores son predefinidos:
| Importancia | Description |
|---|---|
| ANSI_CHARSET | Esta fuente admite el juego de caracteres ANSI de Windows. |
| ARABIC_CHARSET | Esta fuente admite el juego de caracteres árabe. |
| BALTIC_CHARSET | Esta fuente admite el juego de caracteres bálticos. |
| CHINESEBIG5_CHARSET | Esta fuente admite el juego de caracteres chino tradicional (Big 5). |
| DEFAULT_CHARSET | Esta fuente admite el valor del juego de caracteres basado en la página de códigos ANSI de Windows predeterminada del sistema. Por ejemplo, cuando la configuración regional del sistema es inglés (Estados Unidos), se establece como ANSI_CHARSET. |
| EASTEUROPE_CHARSET | Esta fuente admite el juego de caracteres de Europa del Este. |
| GB2312_CHARSET | Esta fuente admite el juego de caracteres chino simplificado (PRC). |
| GREEK_CHARSET | Esta fuente admite el juego de caracteres griegos. |
| HANGEUL_CHARSET | Esta fuente admite el juego de caracteres coreano (Hangul). |
| HEBREW_CHARSET | Esta fuente admite el juego de caracteres hebreos. |
| JOHAB_CHARSET | Esta fuente admite el juego de caracteres coreano (Johab). |
| MAC_CHARSET | Esta fuente admite el valor del juego de caracteres basado en la página de códigos actual de Macintosh del sistema. Este valor se usa principalmente en código heredado y no suele ser necesario, ya que los equipos Macintosh modernos usan Unicode para la codificación. |
| OEM_CHARSET | Esta fuente admite un juego de caracteres específico del OEM. El juego de caracteres OEM depende del sistema. |
| RUSSIAN_CHARSET | Esta fuente admite el juego de caracteres cirílico. |
| SHIFTJIS_CHARSET | Esta fuente admite el juego de caracteres Shift-JIS (japonés estándar del sector). |
| SYMBOL_CHARSET | Esta fuente admite el juego de caracteres de símbolos de Windows. |
| THAI_CHARSET | Esta fuente admite el juego de caracteres tailandés. |
| TURKISH_CHARSET | Esta fuente admite el juego de caracteres turco. |
| VIETNAMESE_CHARSET | Esta fuente admite el juego de caracteres vietnamitas. |
Las fuentes con otros juegos de caracteres pueden existir en el sistema operativo. Si una aplicación usa una fuente con un juego de caracteres desconocido, no debe intentar traducir ni interpretar cadenas que se representan con esa fuente.
Este miembro es importante en el proceso de asignación de fuentes. Para garantizar resultados coherentes, especifique un juego de caracteres específico. Si especifica un nombre de tipo en el miembro lfFaceName , asegúrese de que el valor lfCharSet coincide con el juego de caracteres del tipo de letra especificado en lfFaceName.
lfOutPrecision
Tipo: BYTE
Especifica la precisión de salida. La precisión de salida define la precisión de la salida que debe coincidir con el alto, el ancho, la orientación de caracteres, el escape, el tono y el tipo de fuente solicitados. Puede ser uno de los siguientes valores definidos en Wingdi.h:
| Importancia | Description |
|---|---|
| OUT_DEFAULT_PRECIS | Especifica el comportamiento predeterminado del asignador de fuentes. |
| OUT_RASTER_PRECIS | Indica al asignador de fuentes que elija una fuente ráster cuando el sistema contenga varias fuentes con el mismo nombre. |
| OUT_STRING_PRECIS | El asignador de fuentes no usa este valor, pero se devuelve cuando se enumeran las fuentes ráster. |
lfClipPrecision
Tipo: BYTE
Especifica la precisión del recorte. La precisión del recorte define cómo recortar caracteres que están parcialmente fuera de la región de recorte. Puede ser uno o varios de los siguientes valores definidos en Wingdi.h:
| Importancia | Description |
|---|---|
| CLIP_DEFAULT_PRECIS | Especifica el comportamiento de recorte predeterminado. |
| CLIP_CHARACTER_PRECIS | No se usa. |
| CLIP_STROKE_PRECIS | No lo usa el asignador de fuentes, pero se devuelve cuando se enumeran las fuentes raster, vector o TrueType. |
lfQuality
Tipo: BYTE
Especifica la calidad de salida. La calidad de salida define lo cuidadosamente que el GDI debe intentar coincidir con los atributos de fuente lógica con los de una fuente física real. Puede ser uno de los siguientes valores definidos en Wingdi.h:
| Importancia | Description |
|---|---|
| ANTIALIASED_QUALITY | Habilita el suavizado para la fuente. El controlador de pantalla debe admitir texto antialiased para que esta configuración funcione. |
| NONANTIALIASED_QUALITY | Fuerza el uso de la calidad de borrador cuando la subclave del Registro HKEY_LOCAL_MACHINE\System\GDI\Fontsmoothing está presente. |
| CLEARTYPE_COMPAT_QUALITY | Habilita el texto ClearType para la fuente mediante anchos compatibles. Un ancho compatible genera texto que tiene el mismo espaciado que el texto que no es ClearType. |
| CLEARTYPE_QUALITY | Habilita el texto ClearType para la fuente. El controlador de pantalla debe admitir texto ClearType para que esta configuración funcione. |
| DEFAULT_QUALITY | La apariencia de la fuente no importa. |
| DRAFT_QUALITY | Para las fuentes de ráster GDI, el escalado está habilitado, lo que significa que hay más tamaños de fuente disponibles, pero la calidad puede ser inferior. Las fuentes negrita, cursiva, subrayado y tachado se sintetizan si es necesario. |
lfPitchAndFamily
Tipo: BYTE
Especifica el tono y el grupo de la fuente. Los dos bits de orden bajo especifican el tono de la fuente y pueden ser uno de los siguientes valores definidos en Wingdi.h:
- DEFAULT_PITCH
- FIXED_PITCH
- MONO_FONT
- VARIABLE_PITCH
- FF_DECORATIVE
- FF_DONTCARE
- FF_MODERN
- FF_ROMAN
- FF_SCRIPT
- FF_SWISS
Las familias de fuentes describen el aspecto de una fuente de una manera general. Están diseñados para especificar fuentes cuando el tipo de letra exacto deseado no está disponible. Los valores de las familias de fuentes son los siguientes:
| Importancia | Description |
|---|---|
| FF_DECORATIVE | Fuentes de novedad, por ejemplo, inglés antiguo. |
| FF_DONTCARE | No te preocupes o no lo sepas. |
| FF_MODERN | Fuentes con ancho de trazo constante (monoespacio), con o sin serifas. Las fuentes monoespaciales suelen ser modernas, por ejemplo, Pica, Elite y Courier New. |
| FF_ROMAN | Fuentes con ancho de trazo variable (proporcional) y con serif, por ejemplo, Serif. |
| FF_SCRIPT | Fuentes diseñadas para tener un aspecto similar a la escritura a mano, por ejemplo, Script y Cursive. |
| FF_SWISS | Fuentes con ancho de trazo variable (proporcional) y sin serifas, por ejemplo, Sans Serif. |
lfFaceName[32]
Tipo: TCHAR[LF_FACESIZE]
Especifica una cadena terminada en NULL que especifica el nombre del tipo de letra de la fuente. La longitud de esta cadena no debe superar los 32 caracteres, incluido el carácter nulo de terminación. La función EnumFontFamilies se puede usar para enumerar los nombres de letra de todas las fuentes disponibles actualmente. Si lfFaceName es una cadena vacía, GDI usa la primera fuente que coincide con los demás atributos especificados.
Observaciones
Las situaciones siguientes no admiten suavizado clearType:
- El texto se representa en una impresora.
- Mostrar establecido para 256 colores o menos.
- El texto se representa en un cliente de terminal server.
- La fuente no es una fuente TrueType o una fuente De Microsoft OpenType con esquemas TrueType. Por ejemplo, los siguientes no admiten suavizado clearType: fuentes de tipo 1, fuentes OpenType postscript sin esquemas TrueType, fuentes de mapa de bits, fuentes vectoriales y fuentes del dispositivo.
- La fuente tiene mapas de bits incrustados optimizados para cualquier tamaño de fuente que contenga los mapas de bits incrustados. Por ejemplo, esto ocurre normalmente en fuentes del Este asiático.
Requisitos
| Requirement | Importancia |
|---|---|
| Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
| servidor mínimo admitido | Windows Server 2008 [solo aplicaciones de escritorio] |
| Header | shtypes.h (include Shtypes.h, Dimm.h) |