Estructura IFIMETRICS (winddi.h)
La estructura IFIMETRICS define información para un tipo de letra determinado que GDI puede usar.
Sintaxis
typedef struct _IFIMETRICS {
ULONG cjThis;
ULONG cjIfiExtra;
PTRDIFF dpwszFamilyName;
PTRDIFF dpwszStyleName;
PTRDIFF dpwszFaceName;
PTRDIFF dpwszUniqueName;
PTRDIFF dpFontSim;
LONG lEmbedId;
LONG lItalicAngle;
LONG lCharBias;
PTRDIFF dpCharSets;
BYTE jWinCharSet;
BYTE jWinPitchAndFamily;
USHORT usWinWeight;
ULONG flInfo;
USHORT fsSelection;
USHORT fsType;
FWORD fwdUnitsPerEm;
FWORD fwdLowestPPEm;
FWORD fwdWinAscender;
FWORD fwdWinDescender;
FWORD fwdMacAscender;
FWORD fwdMacDescender;
FWORD fwdMacLineGap;
FWORD fwdTypoAscender;
FWORD fwdTypoDescender;
FWORD fwdTypoLineGap;
FWORD fwdAveCharWidth;
FWORD fwdMaxCharInc;
FWORD fwdCapHeight;
FWORD fwdXHeight;
FWORD fwdSubscriptXSize;
FWORD fwdSubscriptYSize;
FWORD fwdSubscriptXOffset;
FWORD fwdSubscriptYOffset;
FWORD fwdSuperscriptXSize;
FWORD fwdSuperscriptYSize;
FWORD fwdSuperscriptXOffset;
FWORD fwdSuperscriptYOffset;
FWORD fwdUnderscoreSize;
FWORD fwdUnderscorePosition;
FWORD fwdStrikeoutSize;
FWORD fwdStrikeoutPosition;
BYTE chFirstChar;
BYTE chLastChar;
BYTE chDefaultChar;
BYTE chBreakChar;
WCHAR wcFirstChar;
WCHAR wcLastChar;
WCHAR wcDefaultChar;
WCHAR wcBreakChar;
POINTL ptlBaseline;
POINTL ptlAspect;
POINTL ptlCaret;
RECTL rclFontBox;
BYTE achVendId[4];
ULONG cKerningPairs;
ULONG ulPanoseCulture;
PANOSE panose;
PVOID Align;
} IFIMETRICS, *PIFIMETRICS;
Miembros
cjThis
Especifica el tamaño en bytes de esta estructura. El tamaño especificado incluye las cadenas Unicode anexadas al final de esta estructura, además del tamaño en bytes de la estructura IFIEXTRA opcional.
cjIfiExtra
Especifica el tamaño en bytes de la estructura IFIEXTRA que sigue a esta estructura IFIMETRICS. Un valor de cero indica que no hay ninguna estructura IFIEXTRA presente.
dpwszFamilyName
Especifica el desplazamiento en bytes en una cadena Unicode terminada en null que contiene el nombre de familia de la fuente (por ejemplo, "Times Roman"). Por lo general, esta cadena sigue inmediatamente la estructura IFIMETRICS. Esta cadena debe ser la misma que el nombre registrado en el miembro lfFaceName de la estructura LOGFONT de Win32.
dpwszStyleName
Especifica el desplazamiento en bytes en una cadena Unicode terminada en null que describe el estilo de la fuente (por ejemplo, "Bold").
dpwszFaceName
Especifica el desplazamiento en bytes en una cadena Unicode terminada en null que representa el nombre único y completo de la fuente. El nombre contiene los nombres de familia y subfamily de la fuente (por ejemplo, "Times New Roman Bold").
dpwszUniqueName
Especifica el desplazamiento en bytes en una cadena Unicode terminada en null que representa el identificador único de la fuente (por ejemplo, "Monotype:Times New Roman:1990").
dpFontSim
Especifica el desplazamiento en bytes desde el principio de esta estructura IFIMETRICS a una estructura FONTSIM que describe las simulaciones que admite la fuente. El controlador debe establecer este miembro en un valor distinto de cero solo si la fuente admite simulaciones en negrita, cursiva o cursiva en negrita; de lo contrario, el controlador debe establecerlo en cero.
Tenga en cuenta que si una fuente está en cursiva por diseño, el controlador no debe indicar compatibilidad con fuentes para la simulación en cursiva, aunque puede indicar compatibilidad de fuentes para la simulación cursiva en negrita. Del mismo modo, el controlador no debe indicar la compatibilidad de fuentes para la simulación en negrita si la fuente está en negrita por diseño, pero puede indicar compatibilidad con fuentes para la simulación en cursiva en negrita. Si la fuente es negrita y cursiva por diseño, no debe admitir simulaciones.
Los desplazamientos de la estructura FONTSIM son relativos a la base de la estructura FONTSIM.
lEmbedId
Especifica el identificador de inserción de la fuente. Este valor es específico de TrueType y debe establecerse en cero por todos los demás proveedores de fuentes.
lItalicAngle
Especifica el ángulo cursiva de la fuente. Este valor es específico de TrueType y debe establecerse en cero por todos los demás proveedores de fuentes.
lCharBias
Especifica el sesgo de caracteres. Este valor es específico de TrueType y debe establecerse en cero por todos los demás proveedores de fuentes.
dpCharSets
Especifica el desplazamiento desde el principio de esta estructura IFIMETRICS a una matriz que contiene una lista de todos los juegos de caracteres de Windows admitidos por esta fuente. La matriz tiene un tamaño de 16 bytes y siempre se termina con DEFAULT_CHARSET. El primer valor de la matriz debe identificar el juego de caracteres de Windows que tiene la mejor y más completa cobertura en la fuente; este valor también debe almacenarse en jWinCharSet. Por ejemplo, si se trata de una fuente japonesa que también admite conjuntos de caracteres ANSI y Cirílico de EE. UU., jWinCharSet debe establecerse en SHIFTJIS_CHARSET y la matriz identificada por dpCharSets contendrá SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET, DEFAULT_CHARSET.
Si esta fuente no admite más de un juego de caracteres de Windows, dpCharSets debe establecerse en cero.
jWinCharSet
Identifica el juego de caracteres que mejor admite esta fuente. Si la fuente solo admite un juego de caracteres de Windows, el controlador debe almacenar el valor correspondiente en jWinCharSet. El controlador no debe almacenar DEFAULT_CHARSET en este campo. Este miembro puede ser uno de los siguientes valores:
Valor | Significado |
---|---|
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). |
EASTEUROPE_CHARSET | Esta fuente admite el juego de caracteres de Europa oriental. |
GB2312_CHARSET | Esta fuente admite el juego de caracteres chino simplificado (PRC). |
GREEK_CHARSET | Esta fuente admite el juego de caracteres griego. |
HANGEUL_CHARSET | Esta fuente admite el juego de caracteres coreano (Hangeul). |
HEBREW_CHARSET | Esta fuente admite el juego de caracteres hebreos. |
JOHAB_CHARSET | Esta fuente admite el juego de caracteres coreano (Johab). |
OEM_CHARSET | Esta fuente admite un juego de caracteres específico del OEM. El juego de caracteres OEM depende del sistema. |
SHIFTJIS_CHARSET | Esta fuente admite el juego de caracteres Shift-JIS (Japonés Industry Standard). |
SYMBOL_CHARSET | Esta fuente admite el juego de caracteres de símbolos de Windows. |
RUSSIAN_CHARSET | Esta fuente admite el juego de caracteres cirílico. |
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 vietnamita. |
jWinPitchAndFamily
Especifica el tono de la fuente. Los dos bits de orden bajo especifican el tono de la fuente y pueden ser uno de los siguientes valores:
Valor | Significado |
---|---|
FIXED_PITCH | Para fuentes de inclinación fijas |
VARIABLE_PITCH | Para fuentes de inclinación variable |
Los bits de 4 a 7 de este miembro especifican la familia de fuentes y pueden ser uno de los siguientes valores:
Valor | Significado |
---|---|
FF_DECORATIVE | Fuentes de novedad, como el inglés antiguo. |
FF_DONTCARE | No te importa ni se desconoce. |
FF_MODERN | Fuentes con ancho de trazo constante (inclinación fija), con o sin serifas. Las fuentes de tono fijo suelen ser modernas, como Pica, Elite y Courier. |
FF_ROMAN | Fuentes con ancho de trazo variable (espaciado proporcionalmente) y con serifas, como Times Roman, Palatino y Century Schoolbook. |
FF_SCRIPT | Fuentes diseñadas para tener un aspecto similar a la escritura a mano, como Script y Cursive. |
FF_SWISS | Fuentes con ancho de trazo variable (espaciado proporcionalmente) y sin serifas, como Helvetica y Suiza. |
usWinWeight
Especifica el peso de la fuente del intervalo de 0 a 1000 (por ejemplo, 400 es normal y 700 está en negrita). Este valor se proporciona a la aplicación en el miembro lfWeight de la estructura LOGFONT de Win32.
flInfo
Especifica información adicional sobre la fuente. Este campo puede ser una combinación de los siguientes valores de marca:
FM_INFO_1BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de un bit por píxel. Para Windows NT 3.1, la primera versión de Windows NT, debe establecerse esta marca.
FM_INFO_4BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de cuatro bits por píxel. El controlador debe establecer esto si la fuente admite mapas de bits de glifo suavizado con contorno con 16 niveles de gris.
FM_INFO_8BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de ocho bits por píxel. La versión actual de GDI omitirá esta configuración, ya que no admite fuentes de color.
FM_INFO_16BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de 16 bits por píxel. La versión actual de GDI omitirá esta configuración, ya que no admite fuentes de color.
FM_INFO_24BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de 24 bits por píxel. La versión actual de GDI omitirá esta configuración, ya que no admite fuentes de color.
FM_INFO_32BPP
Indica que un mapa de bits de glifo tiene una profundidad de color de 32 bits por píxel. La versión actual de GDI omitirá esta configuración, ya que no admite fuentes de color.
FM_INFO_90DEGREE_ROTATIONS
Indica que la fuente se puede realizar en rotaciones de 90 grados de la forma notional original. GDI solicita la rotación de una fuente incluyendo la rotación en la transformación notional al dispositivo que se pasa al controlador al crear la fuente. Este miembro solo tiene significado cuando no se ha establecido la marca FM_INFO_ARB_XFORMS.
FM_INFO_ANISOTROPIC_SCALING_ONLY
Indica que la fuente solo admite escalas anisotrópicas arbitrarias. Es decir, las transformaciones son equivalentes a una matriz diagonal multiplicada por un número real positivo. Si se establece esta marca, no se pueden establecer las marcas FM_INFO_ARB_XFORMS y FM_INFO_ISOTROPIC_SCALING_ONLY. Si también se establece la marca FM_INFO_90DEGREE_ROTATIONS, la fuente admite transformaciones que son una combinación de un escalado anisotrópico simple seguido de un giro por un múltiplo de 90 grados.
FM_INFO_ARB_XFORMS
Indica que se puede realizar una fuente bajo un intervalo continuo de transformaciones lineales bidimensionales.
FM_INFO_CONSTANT_WIDTH
Indica que todos los glifos de la fuente en todas las realizaciones tienen el mismo valor de incremento de caracteres. Si se establece esta marca, también se debe establecer la marca FM_INFO_OPTICALLY_FIXED_PITCH.
FM_INFO_DBCS_FIXED_PITCH
Indica que los caracteres de doble byte para esta fuente son un tono fijo. Nada está implícito en los caracteres de un solo byte. Esta marca solo es significativa para las fuentes que admiten un juego de caracteres de doble byte (DBCS), como mayús JIS. Las fuentes que no admiten DBCS no deben establecer esta marca.
FM_INFO_DO_NOT_ENUMERATE
Indica que esta fuente no se enumerará mediante las rutinas Win32 EnumFontFamiliesEx, EnumFontFamilies o EnumFonts . Además, la cadena devuelta a una llamada de aplicación Win32 a GetTextFace se recuperará de la cadena dpwszUniqueName. Esta marca permite al proveedor de fuentes asociar más de una estructura IFIMETRICS con una de sus fuentes.
FM_INFO_DSIG
Indica que una fuente es compatible con el estándar Unicode.
FM_INFO_FAMILY_EQUIV
Indica que el desplazamiento dpwszFamilyName en IFIMETRICS es realmente el desplazamiento a una lista de nombres o alias de familia equivalentes. El nombre es el nombre base o real; los nombres posteriores son equivalentes o alias. Cada nombre de la lista termina en null; la lista finaliza en dos ceros.
- <nombre>base 0<>alias 1><0>...<<alias n>
- <0 0><>
Los nombres basados solo se usan para la asignación; no se enumeran.
FM_INFO_IGNORE_TC_RA_ABLE
Indica que, para esta fuente, se omite la marca TC_RA_ABLE.
FM_INFO_INTEGER_WIDTH
Indica que todos los glifos tienen anchos de avance no fraccionales. Normalmente, las fuentes de mapa de bits establecen esta marca.
FM_INFO_INTEGRAL_SCALING
Indica que la fuente se puede escalar mediante una cantidad integral en las direcciones x e y. Si se establece esta marca, el controlador debe poder representar glifos en el caso de que la transformación notional al dispositivo se escale por cantidades integrales en las direcciones x e y. GDI solicita el escalado integral de una fuente incluyendo las escalas axiales en la transformación notional al dispositivo que se pasa al controlador al crear la fuente. Esta marca solo es significativa cuando no se ha establecido la marca FM_INFO_ARB_XFORMS.
FM_INFO_ISOTROPIC_SCALING_ONLY
Indica que la fuente solo admite escalado isotrópico arbitrario. Es decir, las transformaciones son equivalentes a la matriz de identidad multiplicada por un número real positivo. Si se establece esta marca, no se pueden establecer los FM_INFO_ARB_XFORMS ni las marcas de FM_INFO_ANISOTROPIC_SCALING_ONLY. Si se establece la marca FM_INFO_90DEGREE_ROTATIONS, la fuente admite transformaciones equivalentes a un escalado isotrópico seguido de un giro por un múltiplo de 90 grados.
FM_INFO_OPTICALLY_FIXED_PITCH
Indica que esta fuente se considera tipográficamente como tono fijo. Se trata de una calidad óptica de la fuente y no indica necesariamente que todos los glifos de la fuente tengan el mismo incremento de caracteres.
FM_INFO_NONNEGATIVE_AC
Indica que todos los glifos de esta fuente tienen un espaciado no negativo y c . Es decir, el cuadro negro glifo nunca se extiende fuera de la región bordeada por el origen del carácter y el punto de concatenación de caracteres.
FM_INFO_NOT_CONTIGUOUS
Indica que el juego de caracteres admitido no es contiguo.
FM_INFO_RETURNS_BITMAPS
Indica que la fuente contiene una firma digital válida.
FM_INFO_RETURNS_OUTLINES
Indica que para cualquier glifo admitido por el controlador, GDI puede solicitar una estructura PATHOBJ que describa el esquema de ese glifo. Si es posible, cuando el contorno se rellena mediante las convenciones de relleno de rutas de acceso de GDI, el mapa de bits resultante debe ser idéntico al mapa de bits devuelto por el controlador. Las marcas FM_INFO_RETURNS_OUTLINES y FM_INFO_RETURNS_STOKES no se pueden establecer simultáneamente.
FM_INFO_RETURNS_STROKES
Indica que para cualquier glifo admitido por los controladores, GDI puede solicitar una estructura PATHOBJ que describa la spline del glifo. Esta ruta de acceso no se puede rellenar, pero se puede trazar para dar una representación del glifo. Las marcas FM_INFO_RETURNS_OUTLINES y FM_INFO_RETURNS_STOKES no se pueden establecer simultáneamente.
FM_INFO_RIGHT_HANDED
Indica que la dirección de ascenso de la fuente es de 90 grados en sentido contrario a las agujas del reloj desde la dirección de línea base. La dirección de ascenso es la dirección a lo largo del cual se mide la altura y siempre es perpendicular a la dirección de línea base.
FM_INFO_TECH_BITMAP
Indica que la fuente es una fuente de mapa de bits.
FM_INFO_TECH_CFF
Indica que la fuente es una fuente OpenType de Pscript que contiene una tabla de formato de fuente compacta (CFF).
FM_INFO_TECH_MM
Indica que se trata de una fuente multimaestro (MM).
FM_INFO_TECH_OUTLINE_NOT_TRUETYPE
Indica que la fuente se basa en una tecnología de fuente escalable que usa rutas de acceso de esquema, pero no se basa en TrueType. Esta marca no especifica si las rutas de acceso devueltas para esta fuente deben rellenarse o trazo; El consumidor debe examinar las marcas de FM_INFO_RETURNS_STROKES y FM_INFO_RETURNS_OUTLINES para obtener esta información.
FM_INFO_TECH_STROKE
Indica que la fuente se basa en una tecnología de fuente trazos. Esta marca no especifica si las rutas de acceso devueltas para esta fuente deben rellenarse o trazo; El consumidor debe examinar las marcas de FM_INFO_RETURNS_STROKES y FM_INFO_RETURNS_OUTLINES para obtener esta información.
FM_INFO_TECH_TRUETYPE
Indica que la fuente es una fuente TrueType.
FM_INFO_TECH_TYPE1
Indica que esta fuente es una fuente de pantalla PostScript (Type1 o OpenType PostScript).
fsSelection
Especifica una combinación de las marcas siguientes:
Valor | Significado |
---|---|
FM_SEL_BOLD | Establezca si los caracteres de la fuente están en negrita. |
FM_SEL_ITALIC | Establezca si los caracteres de la fuente están en cursiva. |
FM_SEL_NEGATIVE | Establezca si los caracteres de la fuente tienen invertido el primer plano y el fondo. |
FM_SEL_OUTLINED | Establezca si los caracteres de la fuente son huecos. |
FM_SEL_REGULAR | Establezca si los caracteres de la fuente son de peso normal. |
FM_SEL_STRIKEOUT | Establece si los caracteres de la fuente se eliminan de forma predeterminada; De lo contrario, se deben simular los tachados. |
FM_SEL_UNDERSCORE | Establece si todos los caracteres de la fuente están subrayados de forma predeterminada; De lo contrario, se debe simular la incorsificación. |
fsType
Se trata de un campo de bits específico de TrueType que indica ciertas propiedades para la fuente, como la inserción de fuentes y los derechos de licencia de la fuente. Las fuentes incrustables se pueden almacenar en un documento. Cuando se abre un documento con fuentes incrustadas en un sistema que no tiene instalada la fuente (el sistema remoto), la fuente incrustada se puede cargar para su uso temporal (y, en algunos casos, permanente) en ese sistema mediante una aplicación compatible con inserción. El proveedor de fuentes concede los derechos de licencia de inserción. Se pueden establecer las marcas siguientes:
Valor | Significado |
---|---|
FM_EDITABLE_EMBED | Establezca si la fuente se puede incrustar y cargar temporalmente en otros sistemas. Los documentos que contienen fuentes editables se pueden abrir para leer y escribir. |
FM_READONLY_EMBED | Establecer si no se permite la inserción de lectura y escritura; solo se permite la encapsulación de "vista previa e impresión". Cuando se establece este bit, la fuente se puede incrustar y cargar temporalmente en el sistema remoto. Los documentos que contengan fuentes de "vista previa e impresión" deben abrirse "de solo lectura;" no se puede aplicar ninguna modificación al documento. |
|
Establezca si la fuente es una fuente de licencia restringida. Cuando solo se establece este bit, esta fuente no debe modificarse, incrustarse ni intercambiarse de ninguna manera sin obtener primero el permiso del propietario legal. Para que la inserción de licencias restringidas surta efecto, debe ser el único nivel de inserción seleccionado. |
Las fuentes con el conjunto de bits FM_READONLY_EMBED indican que se pueden incrustar en documentos, pero solo deben instalarse temporalmente en el sistema remoto. Cualquier documento que incluya una fuente de FM_READONLY_EMBED debe abrirse "de solo lectura". Es decir, la aplicación puede permitir que el usuario vea o imprima el documento, pero no editarlo.
Las fuentes con el conjunto de bits FM_EDITABLE_EMBED indican que se pueden incrustar en documentos, pero solo deben instalarse temporalmente en el sistema remoto. A diferencia de las fuentes de FM_READONLY_EMBED, se permite la edición de documentos que contienen fuentes editables "lectura y escritura", y se pueden guardar los cambios.
Las fuentes sin ningún conjunto de bits fsType indican que se pueden incrustar y instalar permanentemente en el sistema remoto mediante una aplicación. El usuario del sistema remoto adquiere los derechos, obligaciones y licencias idénticos para esa fuente que el comprador original de la fuente, y está sujeto al mismo contrato de licencia de usuario final, copyright, patente de diseño y/o marca comercial que era el comprador original.
Las aplicaciones que implementan compatibilidad con la inserción de fuentes, ya sea mediante el uso del archivo DLL de inserción de fuentes o a través de otros medios, no deben insertar fuentes que no tienen licencia para permitir la inserción. Además, las aplicaciones que cargan fuentes incrustadas para su uso temporal deben eliminar las fuentes cuando se cierra el documento que contiene la fuente incrustada.
Si se establecen varios bits de inserción, la licencia menos restrictiva concedida tiene prioridad. Por ejemplo, si se establecen los bits 1 y 3, el bit 3 tiene prioridad sobre el bit 1 y la fuente se puede incrustar con derechos editables. Con fines de compatibilidad, la mayoría de los proveedores que conceden derechos de inserción editables también establecen el bit Vista previa & Imprimir (0x000C). Esto permite que una aplicación que solo admita la inserción de & vista previa para detectar que se permite la inserción de fuentes.
fwdUnitsPerEm
Especifica el alto em de la fuente.
fwdLowestPPEm
Especifica el tamaño legible más pequeño de la fuente, en píxeles. Este valor se omite para las fuentes de mapa de bits.
fwdWinAscender
Especifica el valor ascendente de Windows para la fuente.
fwdWinDescender
Especifica el valor descendiente de Windows para la fuente.
fwdMacAscender
Especifica el valor ascendente de Macintosh para la fuente.
fwdMacDescender
Especifica el valor descendiente de Macintosh para la fuente. Este número suele ser menor que cero. Mide el desplazamiento firmado desde la línea base del descendiente más bajo del juego de caracteres macintosh.
fwdMacLineGap
Especifica el espacio de línea de Macintosh para la fuente. El espaciado entre líneas de Macintosh sugerido es igual a fwdMacLineGap + fwdMacAscender – fwdMacDescender.
fwdTypoAscender
Especifica el valor de ascenso tipográfico para la fuente.
fwdTypoDescender
Especifica el valor del descendiente tipográfico de la fuente. Este valor especifica el desplazamiento con signo del descendiente más bajo de la línea base.
fwdTypoLineGap
Especifica el intervalo de línea tipográfico para la fuente.
fwdAveCharWidth
Especifica el promedio aritmético del ancho de las 26 letras minúsculas "a" a la "z" del alfabeto latino y el carácter de espacio. Si alguna de las 26 letras minúsculas no está presente, este miembro debe establecerse igual al promedio ponderado de todos los glifos de la fuente.
fwdMaxCharInc
Especifica el incremento máximo de caracteres de todos los glifos de la fuente.
fwdCapHeight
Especifica el alto de la línea óptica que describe la parte superior de la "H" mayúscula en unidades de fuente (FUnits). Esto podría no ser el mismo que el alto medido de la mayúscula "H". Si esta información no existe, fwdCapHeight debe establecerse en cero, lo que indica que no está definido.
fwdXHeight
Especifica el alto de la línea óptica que describe el alto del "x" en minúsculas en unidades de fuente. Esto podría no ser el mismo que el alto medido de la "x" minúscula. Un valor de cero indica que este miembro no está definido.
fwdSubscriptXSize
Especifica el ancho de caracteres sugerido (el tamaño a lo largo de la dirección de línea base) de la fuente de subíndice.
fwdSubscriptYSize
Especifica el alto del carácter sugerido (el tamaño a lo largo de la dirección ascendente) de la fuente de subíndice.
fwdSubscriptXOffset
Especifica el desplazamiento sugerido en la dirección de línea base del carácter de subíndice. El desplazamiento es con respecto al origen de caracteres del carácter base.
fwdSubscriptYOffset
Especifica el desplazamiento sugerido en la dirección de línea base del carácter de subíndice. El desplazamiento se toma del origen del carácter base.
fwdSuperscriptXSize
Especifica el ancho de caracteres sugerido (el tamaño a lo largo de la dirección de línea base) de la fuente de superíndice.
fwdSuperscriptYSize
Especifica el alto del carácter sugerido (el tamaño a lo largo de la dirección ascendente) de la fuente de superíndice.
fwdSuperscriptXOffset
Especifica el desplazamiento sugerido en la dirección de línea base del carácter de superíndice. El desplazamiento se toma del origen del carácter base.
fwdSuperscriptYOffset
Especifica el desplazamiento sugerido en la dirección de línea base del carácter de superíndice. El desplazamiento se toma del origen del carácter base.
fwdUnderscoreSize
Especifica el ancho sugerido de la barra de subrayado, en unidades de fuente.
fwdUnderscorePosition
Especifica el desplazamiento sugerido, en unidades de fuente, desde la línea base hasta el centro de la barra de subrayado.
fwdStrikeoutSize
Especifica el ancho sugerido de la barra de tachado, en coordenadas de fuente.
fwdStrikeoutPosition
Especifica el desplazamiento sugerido del centro de la barra de tachado de la línea base.
chFirstChar
Especifica el carácter admitido más bajo en la página de códigos especificada en jWinCharSet. Este campo se proporciona para la compatibilidad con Windows 3.1.
chLastChar
Especifica el carácter más alto admitido en la página de códigos especificada en jWinCharSet. Este campo se proporciona para la compatibilidad con Windows 3.1.
chDefaultChar
Especifica el carácter predeterminado en la página de códigos especificada en jWinCharSet. Este campo se proporciona para la compatibilidad con Windows 3.1.
chBreakChar
Especifica el carácter de interrupción en la página de códigos especificada en jWinCharSet. Este campo se proporciona para la compatibilidad con Windows 3.1.
wcFirstChar
Especifica el carácter admitido con el código de caracteres Unicode más pequeño.
wcLastChar
Especifica el carácter admitido con el código de caracteres Unicode más grande.
wcDefaultChar
Especifica el carácter que se va a sustituir cuando una aplicación solicita un carácter que no es compatible con la fuente.
wcBreakChar
Especifica el punto de código del carácter de espacio o su equivalente.
ptlBaseline
Especifica una estructura POINTL que contiene la dirección de escritura prevista de esta fuente. Por ejemplo, una fuente latina típica especifica un valor de (1,0).
ptlAspect
Especifica una estructura POINTL que contiene la relación de aspecto de los centros de píxeles para los que se diseñó la fuente de mapa de bits. Este valor solo lo usan las fuentes de mapa de bits.
ptlCaret
Especifica una estructura POINTL que contiene la dirección del ascendente de la fuente. Por ejemplo, el valor de una fuente latina no localizada es (0,1) mientras que una fuente latina cursiva podría especificar un valor de (2,5).
rclFontBox
Especifica una estructura RECTL que describe el rectángulo delimitador de todos los glifos de la fuente en el espacio de diseño.
achVendId[4]
Especifica un identificador de cuatro caracteres para el proveedor de fuentes. Los identificadores se documentan en la especificación TrueType de Microsoft.
cKerningPairs
Especifica el número de pares de inter kerning asociados a esta fuente.
ulPanoseCulture
Especifica la manera en que se va a interpretar el número panose. Este número debe establecerse en FM_PANOSE_CULTURE_LATIN para las fuentes basadas en latin. Consulte la documentación del SDK de Microsoft Window para obtener información sobre la estructura PANOSE.
panose
Es una matriz de 10 bytes que se usa para describir las características visuales de un tipo de letra determinado. Estas características se usan para asociar la fuente a otras fuentes de apariencia similar con nombres diferentes. Consulte la documentación del SDK de Windows para obtener información sobre la estructura PANOSE.
Align
Este miembro solo se define si se define la constante _WIN64. Su único propósito es asegurarse de que esta estructura se alinea correctamente bajo la arquitectura de Itanium.
Comentarios
Opcionalmente, se puede especificar información adicional para un tipo de letra en la estructura IFIEXTRA .
La rutina DrvQueryFont de un controlador rellena y devuelve una estructura IFIMETRICS a GDI.
La estructura IFIMETRICS define toda la información de un tipo de letra que GDI entiende. La mayoría de los miembros son valores FWORD, que son cantidades de 16 bits firmadas en el espacio de diseño. Si la fuente es una fuente ráster, el espacio de diseño y el espacio del dispositivo son iguales y una unidad de fuente es equivalente a la distancia entre píxeles.
El sistema de coordenadas del espacio de fuente/notional es tal que la coordenada y aumenta en una dirección ascendente y la coordenada x aumenta a la derecha.
El miembro Align de la estructura IFIMETRICS hace que sea mayor para las máquinas x64 que para las máquinas x32, que tiene ramificaciones para archivos de formato de fuente binarios con formato según esta estructura. A partir de Windows Server 2003 SP1, se ha agregado una estructura de tamaño fijo adicional a Prntfont.h: PRINTIFI32. La estructura PRINTIFI32 es idéntica a la estructura IFIMETRICS, salvo que no contiene un miembro Align .
Requisitos
Requisito | Valor |
---|---|
Header | winddi.h (incluya Winddi.h) |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de