Uso de métricas TrueType portables
Las aplicaciones que usan las métricas de texto TrueType pueden lograr un alto grado de portabilidad de impresoras y documentos; pueden usar métricas TrueType, incluso si deben mantener la compatibilidad con versiones tempranas de 16 bits de Windows.
Los anchos de diseño superan la mayoría de los problemas de texto dependiente del dispositivo introducido por los dispositivos físicos. Los anchos de diseño son un tipo de ancho lógico. Independientemente de cualquier problema de rasterización o transformaciones de escalado, cada glifo tiene un ancho lógico y un alto. Compuesto en una página lógica, cada carácter de una cadena tiene un lugar independiente de los anchos del dispositivo físico. Aunque un ancho lógico implica que los anchos se pueden escalar linealmente en todos los tamaños de punto, esto no es necesariamente true para fuentes noportables o la mayoría de las fuentes TrueType. En tamaños de punto más pequeños, algunos glifos se hacen más anchos en relación con su altura para mejorar la legibilidad.
Los caracteres de las fuentes principales TrueType están diseñados en una cuadrícula de 2048 a 2048. El ancho de diseño es el ancho de un carácter en estas unidades de cuadrícula. (TrueType admite cualquier tamaño de cuadrícula de enteros de hasta 16 384 por 16 384; tamaños de cuadrícula que son potencias enteras de 2 escala más rápido que otros tamaños de cuadrícula).
El contorno de fuente está diseñado en unidades notionales. El cuadrado em es la cuadrícula notional en la que se ajusta el contorno de fuente. (Puede usar el miembro otmEMSquare de OUTLINETEXTMETRIC y el miembro ntmSizeEM de NEWTEXTMETRIC para recuperar el tamaño del cuadrado em en unidades notionales). Cuando se crea una fuente que tiene un tamaño de punto (en unidades de dispositivo) igual al tamaño de su cuadrado em, los anchos ABC de esta fuente son los anchos de diseño deseados. Por ejemplo, supongamos que el tamaño de un cuadrado em es 1000 y los anchos ABC de un carácter de la fuente son 150, 400 y 150. Un carácter de esta fuente que tenga 10 unidades de dispositivo de alto tendría anchos ABC de 1,5, 4 y 1,5, respectivamente. Dado que el modo de asignación de MM_TEXT se usa normalmente con fuentes (y MM_TEXT equivale a unidades de dispositivo), se trata de un cálculo sencillo.
Debido a la alta resolución de los anchos de diseño TrueType, las aplicaciones que las usan deben tener en cuenta los valores numéricos grandes que se pueden crear. Para obtener más información, vea los temas siguientes: