Hinting: hinting Post­Script automático

Tutorial
by Rainer Erich Scheichelbauer

29 julio 2022 Publicado el 8 junio 2012

Un buen renderizado en pantalla para cuerpos pequeños requiere un hinting bien hecho. Pero es bastante complicado dar buenas instrucciones. Esta es la razón por la que conviene que se haga en la medida de lo posible de forma automática. Si sigues algunas reglas simples, puedes obtener resultados bastante buenos sin demasiado esfuerzo.

Lo que el hinting puede y no puede hacer

El hinting PostScript es una tecnología que permite que una fuente basada en el formato CFF parezca más consistente y uniforme en un entorno de baja resolución. Esto se hace insertando ‘hints’ en los datos vectoriales: estos ayudan al rasterizador (el software que crea la imagen de píxeles de nuestras formas de letras) a determinar si algo es un trazo importante y debería aparecer incluso si solo hay unos pocos píxeles disponibles para reproducir todo el glifo.

Algunas personas piensan que el hinting es una cuestión de preservar las formas en la pantalla. De hecho es todo lo contrario. El hinting se trata de deformar las formas de las letras para que se ajusten mejor a la cuadrícula de píxeles. La investigación ha demostrado que la legibilidad aumenta si las formas son nítidas y consistentes, en lugar de que si aparecen borrosas debido al suavizado. Y una imagen más nítida y consistente de las letras en pantalla es de lo que se trata el hinting.

El hinting PostScript tiene dos objetivos a lograr en bajas resoluciones: primero, una apariencia más consistente de los trazos, es decir, se usa la misma cantidad de píxeles para trazos con anchos similares. El segundo objetivo es garantizar métricas verticales más consistentes, es decir, una línea de base, altura de x, altura de mayúsculas, etc. que sean precisas.

El hinting PostScript no estandariza los anchos de los glifos. Por lo tanto, podrás obtener diferentes representaciones de píxeles para la misma letra escrita varias veces. Toma esta n como ejemplo:

Esta es una ampliación de la misma n mecanografiada varias veces. Puedes ver que las dos primeras n tienen cada una una contraforma de cuatro píxeles, mientras que las siguientes n tienen una contraforma de cinco píxeles. Eso está bien, porque el ancho total de la línea no debe verse comprometido, y si todas las n tuvieran una contraforma de 4 píxeles, la línea sería demasiado corta, y si todas las n tuvieran una contraforma de 5 píxeles, esta sería demasiado larga.

¿Necesitamos hinting? ¿Y podemos tenerlo?

Siempre tienes la opción de dejar que la aplicación llamada ‘autohinter’ analice tu fuente e inserte hints automáticamente. Este autohinter está integrado en Glyphs.

Pero, antes de ir y dejar que tu fuente obtenga un hinting automático, pregúntate: ¿tu fuente necesita más uniformidad a bajas resoluciones? Muchos diseños de fuentes decorativas o script no requieren esto. No realices hinting en fuentes que sean intencionalmente irregulares. Especialmente en casos de contornos complejos, realmente no es recomendable hacer hinting.

Continúa solo si tu tipografía tiene características en su diseño que se repiten regularmente. Por ejemplo, un trazo que sea igual en todas las letras minúsculas, como b, d, f, h, i, j, k, l, m, n, p, q, r, t y u .

Y hay más. El hinting tiene requisitos particulares:

  • Todas las direcciones de trazo deben ser correctas, Trazados> Corregir dirección de trazos (Cmd-Shift-R) puede ayudar.
  • Los puntos extremos deben haberse colocado, al menos en los trazos que se suponen deben recibir un hint de trazo; Trazados > Añadir extremos o Shift-clic en un segmento con la herramienta Dibujo (P) agregará los extremos que faltan.
  • Tus contornos deben ser simples. ¿Efectos especiales, caracteres con texturas, zigzags, diseños con bordes? Sin hinting en estos casos.
  • Tu diseño debe tener métricas verticales consistentes con rebasamientos uniformes, y anchos de trazos relativamente consistentes.

Lee más sobre dibuja buenos trazados. si aún no lo has hecho.

Configurar hinting automático

Supongamos que tienes un diseño tipográfico consistente que reúne todos los criterios descritos anteriormente. Por lo tanto, el hinting automático puede hacer su magia. Sin embargo, necesitas que le brindes algo de información. Más específicamente, el hinting automático necesita saber dos cosas: valores estándar de astas que sean bien representativos y zonas de alineación que también sean representativas (o brevemente, astas y zonas). Estos valores a veces se denominan hints de la fuente o hints generales de la fuente, a diferencia de los hints de glifos que el hinting automático insertará para nosotros.

Puedes configurar ambas astas y zonas en Archivo > Información de la fuente > Másteres (Cmd-I). Cada máster tiene sus propias astas y zonas, porque hay que interpolarlos:

Astas estándar

Sigue los siguientes pasos para definir astas estándares perfectas:

  1. Para comenzar, mide el ancho de tus astas verticales y horizontales, así como el ancho de la panza de las formas curvas, luego ingresa los valores en los campos para las astas verticales y las astas horizontales, respectivamente. Las astas horizontales tienen el ancho de los travesaños de la e minúscula, la letra A mayúscula y las serifas. Un asta vertical toma de referencia el ancho del asta de una n minúscula, una H mayúscula o incluso las partes verticales de una O mayúscula.
  2. Toma la menor cantidad de valores posible y combina valores que sean aproximados entre sí. La razón es que a baja resolución deseas que astas similares tengan la misma cantidad de píxeles. Al final, no deberías tener más de dos valores H y dos valores V, mejor aún si solo tienes uno para cada uno. En el peor de los casos, puedes tener tres valores si realmente son muy diferentes.
  3. Si ingresas más de un valor, el primer valor de asta que ingreses es el más importante, así que elige sabiamente. En la mayoría de los casos, este será el ancho del asta en minúsculas, pero por supuesto, lo que importa es que se cumpla la intención de tu diseño.

Repite este paso para cada máster que tengas en tu fuente. Asegúrate de que el número y el orden de los valores de las astas sean compatibles en todos los másteres, para que la interpolación funcione.

Zonas de alineación

Una zona de alineación es un área unida por varias formas que tienen alturas similares-pero-no-exactamente-iguales (o profundidades, según el caso). Piensa en bordes rectos, serifas cóncavas y rebasamientos ópticos de las formas redondas:

A baja resolución, deseas que todas estas formas se detengan en las mismas alturas de píxeles. En otras palabras, deseas que se eliminen los bordes afilados y los rebasamientos. Cualquier cosa que deba ser aplanada (‘alineada’) para generar un borde limpio debe incluirse en una zona.

Una zona tiene una posición y un tamaño. La posición es el borde plano y su tamaño debe ser lo suficientemente grande como para incluir todo lo que deba aplanarse mientras se quitan los rebasamientos. Las formas tocan la posición o la exceden, pero no se posicionan por fuera del tamaño de la zona. Ten en cuenta que el tamaño es positivo cuando el rebasamiento está por encima de los bordes planos (por ejemplo, por encima de la altura de x, mayúsculas, versalitas, hombro o ascendentes, o por encima de la parte superior de los dígitos superiores o inferiores). Es negativo cuando el rebasamiento está por debajo de los bordes planos (por ejemplo, debajo de la línea de base y los descendentes, o debajo de la parte inferior de los dígitos superior e inferior).

  1. Asegúrate de que tus métricas verticales estén configuradas correctamente: altura del ascendente, de mayúsculas, altura de x, largo del descendente. Los valores ingresados ​​deben ignorar los rebasamientos. Si no estás seguro, toma el valor más cercano a la línea de base.
  2. Si tienes versalitas, querrás agregar el parámetro personalizado smallCapHeight e ingresar su altura como valor del parámetro.
  3. Para las fuentes indoarias y árabes, puedes agregar un parámetro shoulderHeight para una zona de alineación adicional.
  4. Ahora presiona el botón Actualizar (flecha gris circular) al lado del campo Zonas de alineación. Glyphs intentará adivinar los valores en función de sus medidas verticales y los rebasamientos que se encuentran en tu máster de fuente. Para los rebasamientos, Glyphs medirá algunos glifos como minúsculas o, f y g, la letra mayúscula O y la versalita o.sc. Si estas letras no están presentes, el tamaño predeterminado será de 16 unidades.
  5. Es una buena idea verificar si Glyphs ha evaluado correctamente el tamaño de las zonas. Hecha una mirada rápida en tus glifos para asegurarte de que los rebasamientos estén bien contenidos en las zonas. Si la opción Vista > Mostrar métricas (Cmd-Shift-M) está habilitada, Glyphs y resaltará los nodos que están dentro de las zonas.
  6. Al adaptar tus zonas, manténlas lo más pequeñas y ajustadas posible. Como regla general, una zona no debe exceder las 25 unidades.
  7. Puedes tener hasta 6 zonas superiores (valores positivos) y 6 zonas inferiores incluyendo la zona línea de base (valores negativos). Tan pronto como definas las zonas, un de ellas debe ser la zona de línea de base.
  8. La zona de línea de base obligatoria debe colocarse en cero y debe tener un valor de altura negativo.
  9. Las zonas no pueden superponerse. Debe haber al menos una unidad de distancia entre las zonas. (Para ser más precisos, la distancia debe ser equivalente a al menos 1 + 2 × blueFuzz. Lee el capítulo blueFuzz más adelante para obtener más detalles).

Nuevamente, repite estos pasos para todos los másteres en tu fuente. Asegúrate de que el número y el orden de las zonas sea el mismo para todos los másteres. Dado que las zonas no deben superponerse, una zona nunca debe pasar por alto a otra en la interpolación.

Algunos consejos:

Para verificar la consistencia de la altura de las letras, considera el plugin ShowTopsAndBottoms. Instálalo a través de Ventana> Gestor de plugins y luego, después de reiniciar Glyphs, actívalo a través de Vista > Mostrar superiores e inferiores. Ayuda a identificar los límites de letras que exceden las zonas:

Mark Frömberg (@mark2mark) ha escrito un script que te permite definir todas las zonas a la vez. Lo encontrarás en su repositorio de scripts en Font > Set Size for Alignment Zones.

Si en Archivo > Información de la fuente… > Otros > Subdivisiones tienes una configuración que no sea 1 (es decir, si estás usando decimales en tus coordenadas), deberás aumentar el tamaño de cada zona en una unidad en cambas direcciones. Por ejemplo, una zona de altura de x en la posición 500, tamaño 15, debería cambiarse a la posición 499 y tener un tamaño 17. Solo la zona de línea de base debe permanecer en la posición cero. En el repositorio de scripts de mekkablue, encontrarás el script Hinting > BlueFuzzer que te ayuda a hacer precisamente eso, en caso de que lo necesites:

El nombre del script proviene de la función blueFuzz que se describe más adelante. En el mismo repositorio, encontrarás varios otros scripts útiles en el submenú Hinting.

Aplicar hinting automático

Ahora que todo está configurado, puedes realizar hinting automático habilitándolo en el cuadro de diálogo Archivo > Exportar…. Por supuesto, dado que el hinting automático de PostScript es una tecnología de PostScript, solo se aplica a las fuentes CFF, y no a las fuentes TrueType. Así que querrás deshabilitar la opción TTF:

También puedes forzar la activación o desactivación del hinting automático anulando la configuración en la ventana de exportación, con un parámetro personalizado de Autohinting en Archivo > Información de la fuente… > Instancias.

¡Eso es todo! No fue tan mal.

Pon a prueba el hinting

Ahora, exporta tu fuente con la opción Autohint habilitada. Puedes poner a prueba tu hinting en aplicaciones que tengan un renderizador que respete el hinting de PostScript. En general, Mac OS X ignora el hinting, por lo que debes recurrir las aplicaciones de Adobe. Recomiendo InDesign.

Para ver mejor los píxeles, puedes usar el zoom de pantalla integrado de Mac: ve a Preferencias del sistema > Accesibilidad > Zoom, y desde allí habilita la opción Usar gesto de desplazamiento con las teclas de modificación para zoom, luego selecciona Avanzado y desactiva Suavizado de imágenes:

Ahora puedes mantener presionada la tecla Ctrl, o cualquier combinación de teclas que hayas configurado para desplazarte, y luego acercar y alejar, para ampliar los píxeles de la pantalla al tamaño que desees. En un trackpad de MacBook, puedes desplazarte deslizando dos dedos hacia arriba y hacia abajo.

Para darle un ejemplo, así es como se ve Henriette de Typejockeys, sin hinting, en InDesign:

Misma fuente, mismo texto, misma aplicación, pero esta vez con hinting:

Ten en cuenta que el texto aparece más nítido, hay menos borrosidad, y las alturas de las letras y las astas parecen todas más consistentes.

blueScale

En Archivo > Información de la fuente > Fuente, puedes agregar el parámetro personalizado blueScale para controlar el tamaño de la fuente hasta para la eliminación de los rebasamientos. Más precisamente, blueScale controla el tamaño de PPM por debajo del cual se aplanan las zonas. En otras palabras: en qué tamaño de píxel se detiene la eliminación de los rebasamientos. En tamaño blueScale y mayores, los rebasamientos dentro de las zonas de alineación se mostrarán con un tamaño de al menos un píxel. El valor de blueScale se calcula como (tamaño PPM × 72 ÷ 300 − 0,49) ÷ 240. El tamaño máximo de PPM posible depende del tamaño de tus zonas de alineación. Se calcula de la siguiente manera: (0,49 + 240 ÷ tamaño de la zona más grande en unidades) ÷ 72 × 300.

Nota: PPC significa Píxeles por Cuadratín y representa el tamaño de la fuente en píxeles, es decir, la cantidad de píxeles utilizados para mostrar un cuadratín (Eme), de ahí el nombre. De forma predeterminada, un Eme tiene 1000 unidades de fuente. Sin embargo, puedes establecer un valor diferente en Archivo > Información de la fuente… > Fuente > Unidades por Eme. El valor de PPC es el cuerpo equivalente a 72 ppi, que es la resolución que las aplicaciones de macOS y Adobe consideran para las pantallas que no son Retina.

Ejemplo: tu zona más grande tiene 18 unidades de profundidad. En teoría, esto significa que la visualización de los rebasamientos puede diferir hasta un tamaño de (0,49 + 240 ÷ 18) ÷ 72 × 300 = 57 PPM, en otras palabras, los rebasamientos se pueden suprimir para todos los tamaños hasta 56 PPM inclusive. Supongamos que deseas suprimir los rebasamientos de 40 PPM e inferiores, por lo que los rebasamientos serán visibles a partir de 41 PPM y superiores. Este tamaño es posible ya que es inferior al 56/57 PPM que calculamos, es decir, podemos eliminar los rebasamientos hasta 56, pero elegimos hacer esto solo para 40 PPM e inferiores. Todo lo que necesitas hacer es establecer tu parámetro blueScale en un valor correspondiente al primer tamaño de píxel que debería mostrar rebasamientos con al menos un píxel: (41 × 72 ÷ 300 − 0.49) ÷ 240 = 0.03896.

¿Te asustan las fórmulas matemáticas? No hay problema, aquí hay una tabla útil para ayudarte a encontrar el valor blueScale correcto para tu fuente (a continuación, se incluyen las instrucciones):

La visualización de rebasamientos comienza en PPM (=cuerpo a 72ppi) Cuerpo a 96ppi (Windows) Cuerpo a 144ppi (Retina) Tamaño máximo de las zonas de alineación Valor blueScale en Información de la fuente > Fuente
20 px 15 pt 10 pt 55 u 0.01796
21 px 16 pt 10 pt 52 u 0.01896
22 px 16 pt 11 pt 50 u 0.01996
23 px 17 pt 12 pt 47 u 0.02096
24 px 18 pt 12 pt 45 u 0.02196
25 px 19 pt 12 pt 43 u 0.02296
26 px 20 pt 13 pt 41 u 0.02396
27 px 20 pt 14 pt 40 u 0.02496
28 px 21 pt 14 pt 38 u 0.02596
29 px 22 pt 14 pt 37 u 0.02696
30 px 22 pt 15 pt 35 u 0.02796
31 px 23 pt 16 pt 34 u 0.02896
32 px 24 pt 16 pt 33 u 0.02996
33 px 25 pt 16 pt 32 u 0.03096
34 px 26 pt 17 pt 31 u 0.03196
35 px 26 pt 18 pt 30 u 0.03296
36 px 27 pt 18 pt 29 u 0.03396
37 px 28 pt 18 pt 28 u 0.03496
38 px 28 pt 19 pt 27 u 0.03596
39 px 29 pt 20 pt 27 u 0.03696
40 px 30 pt 20 pt 26 u 0.03796
41 px 31 pt 20 pt 25 u 0.03896
42 px 32 pt 21 pt 25 u 0.03996
43 px 32 pt 22 pt 24 u 0.04096
44 px 33 pt 22 pt 23 u 0.04196
45 px 34 pt 22 pt 23 u 0.04296
46 px 34 pt 23 pt 22 u 0.04396
47 px 35 pt 24 pt 22 u 0.04496
48 px 36 pt 24 pt 21 u 0.04596
49 px 37 pt 24 pt 21 u 0.04696
50 px 38 pt 25 pt 20 u 0.04796
51 px 38 pt 26 pt 20 u 0.04896
52 px 39 pt 26 pt 20 u 0.04996
53 px 40 pt 26 pt 19 u 0.05096
54 px 40 pt 27 pt 19 u 0.05196
55 px 41 pt 28 pt 18 u 0.05296
56 px 42 pt 28 pt 18 u 0.05396
57 px 43 pt 28 pt 18 u 0.05496
58 px 44 pt 29 pt 17 u 0.05596
59 px 44 pt 30 pt 17 u 0.05696
60 px 45 pt 30 pt 17 u 0.05796
61 px 46 pt 30 pt 16 u 0.05896
62 px 46 pt 31 pt 16 u 0.05996
63 px 47 pt 32 pt 16 u 0.06096
64 px 48 pt 32 pt 16 u 0.06196
65 px 49 pt 32 pt 15 u 0.06296
66 px 50 pt 33 pt 15 u 0.06396
67 px 50 pt 34 pt 15 u 0.06496
68 px 51 pt 34 pt 15 u 0.06596
69 px 52 pt 34 pt 14 u 0.06696
70 px 52 pt 35 pt 14 u 0.06796
71 px 53 pt 36 pt 14 u 0.06896
72 px 54 pt 36 pt 14 u 0.06996
73 px 55 pt 36 pt 14 u 0.07096
74 px 56 pt 37 pt 13 u 0.07196
75 px 56 pt 38 pt 13 u 0.07296
76 px 57 pt 38 pt 13 u 0.07396
77 px 58 pt 38 pt 13 u 0.07496
78 px 58 pt 39 pt 13 u 0.07596
79 px 59 pt 40 pt 12 u 0.07696
80 px 60 pt 40 pt 12 u 0.07796

Instrucciones: para comenzar, debes saber para qué tamaño de píxel (PPM) deseas eliminar los rebasamientos (la columna más a la izquierda). El tamaño de PPM es equivalente al cuerpo en las pantallas Mac (que no son Retina) o al cuerpo con un zoom del 100 % en las aplicaciones de Adobe en pantallas que no son Retina. Como referencia, agregué columnas para tamaños de fuente de 96 ppi (aplicaciones de Windows) y 144 ppi (Mac y Adobe CC en Retina). Luego, debes asegurarte de que en Archivo > Información de la fuente… > Másteres, el tamaño de la zona de alineación más grande no exceda el valor que figura en la columna de tamaño máximo de las zonas. Si todo coincide, puedes usar el valor blueScale de la columna de la derecha como un parámetro personalizado en Archivo > Información de la fuente… > Fuente. Sin embargo, si tu zona de alineación más grande excede el tamaño máximo permitido (en la misma fila), debes ir más arriba, a la fila donde tu zona coincide con el tamaño máximo, y luego puedes usar el valor blueScale que está allí.

Ejemplo: deseas eliminar los rebasamientos de 39 pt e inferiores en Windows, y tu zona más grande en Archivo > Información de la fuente… > Másteres tiene 21 unidades de profundidad. Buscarás en la segunda columna, Cuerpo a 96 ppi, la fila que dice 40 pt, ya que ese es el primer tamaño donde comienzan los rebasamientos. Incluso tenemos dos de esos en nuestra tabla. Cualquiera de los dos funcionará. Si eliges el que tiene el PPM más grande, eliminarás el rebasamiento en un abrir y cerrar de ojos, mientras que con el PPM más pequeño, el rebasamiento podría ser visible un poco antes. En este ejemplo, opté por 54 píxeles porque un poco más de eliminación de rebasamientos me pareció bien. Por desgracia, la zona de alineación máxima posible es de 19 unidades. O ajusto el diseño de mi fuente para mantener los rebasamientos planos hasta 39 pt en Windows. O me comprometo y elijo el siguiente valor de blueScale que permite sobrepasar zonas con una profundidad de 21 unidades. Esto correspondería así a la fila con un PPM de 49 píxeles o 37 pt a 96 ppi.

blueShift

blueShift es un parámetro para eliminar pequeños rebasamientos (por ejemplo, en números pequeños, como inferiores o incluso en serifas cóncavas) más allá del tamaño indicado por blueScale. Se mide en unidades, el valor predeterminado es 7. Se considera una buena práctica ingresar la profundidad de tus serifas cóncavas o rebasamientos pequeños más una unidad. Cualquier cosa más pequeña que blueShift se eliminará.

Específicamente, en un tamaño de PPM por encima del tamaño de blueScale, se muestran los rebasamientos dentro de una zona de alineación:

  • si son iguales o superiores a blueShift (rebasamientos normales), o
  • si son más pequeños que blueShift pero más grandes que medio píxel (pequeños rebasamientos).

Los rebasamientos pequeños se vuelven más grandes que medio píxel con un tamaño de PPM de 500 ÷ (tamaño de rebasamiento en unidades). De nuevo, una tabla útil:

blueShift (rebasamientos en unidades) Medio píxel en PPM (72ppi) Tamaño a 96ppi Tamaño a 144ppi
1 u 500 375 250
2 u 250 187 125
3 u 166 124 83
4 u 125 93 62
5 u 100 75 50
6 u 83 62 41
7 u 71 53 35
8 u 62 46 31
9 u 55 41 27
10 u 50 37 25
11 u 45 33 22
12 u 41 30 20
13 u 38 28 19
14 u 35 26 17
15 u 33 24 16
16 u 31 23 15
17 u 29 21 14
18 u 27 20 13
19 u 26 19 13
20 u 25 18 12

Ejemplo: blueScaleestá configurado para eliminar los rebasamientos de 32 PPM e inferiores, blueShift es de 6 unidades, los rebasamientos tienen una profundidad de 12 unidades.

Algunas terminaciones de trazos están ligeramente inclinadas y sobresalen hasta cinco unidades por debajo de la línea de base. Así que agregamos un parámetro personalizado llamado blueScale en Archivo > Información de la fuente… > Fuente. Entre 0 y 32 PPM, la línea de base se mantendrá completamente nivelada. A partir de 33 PPM, los rebasamientos comenzarán con un píxel pero los extremos inclinados permanecerán planos, porque cinco unidades solo cubren medio píxel a partir de 100 PPM.

blueFuzz

En Archivo > Información de la fuente… > Fuente, también puedes agregar el parámetro blueFuzz. Extiende tus zonas de alineación en ambas direcciones (hacia arriba y hacia abajo) por el número de unidades especificadas en el valor del parámetro.

Ejemplo: supongamos que tienes una zona de alineación colocada a una altura de 500 y con un tamaño de 12 unidades; por lo que une todo, desde 500 hasta 512. Un valor blueFuzz de 1 extendería esta zona una unidad hacia abajo y una unidad hacia arriba, por lo que ahora uniría todo entre 499 y 513.

Ahora, ¿por qué haría tal cosa, en lugar de simplemente extender los valores actuales de la zona en sí? Después de todo, en el ejemplo anterior, podríamos establecer la posición en 499 y el tamaño en 14, ¿verdad? Bueno, una buena razón es que deseas evitar que la zona se deslice un píxel demasiado bajo en un determinado tamaño de píxeles. Por ejemplo, en un tamaño en el que un píxel es tan grande como 27 unidades, una zona de 499 se alinearía en (499 ÷ 27 = 18,48148 ≈) 18 píxeles. Si en cambio lo mantenemos en 500 y usamos el valor blueFuzz de 1, la altura de x se mantendrá en (500 ÷ 27 = 18.51852 ≈) 19 píxeles.

Si crees que esto es un perfeccionismo exagerado, especialmente para los casos relativamente raros en los que realmente marcaría la diferencia, bueno, no hay problema, elimina el parámetro o configúralo en cero. Después de todo, es probable que tu cliente no esté pagando por ello y probablemente no notará la diferencia. Además, Adobe recomienda oficialmente no usarlo en fuentes comerciales y reservarlo para fines de prueba, si es que lo hace.

Sin embargo, no tenemos evidencia de un mal funcionamiento de la fuente que tenga blueFuzz establecido en un valor mayor que cero, y tal vez te encuentres en una situación en la que realmente tenga sentido usarlo. En este caso, ten en cuenta esta consecuencia para tus zonas de alineación: debe haber una distancia de al menos 2 × blueFuzz + 1 entre dos zonas. Así que puede que te encuentres ajustando las posiciones de tus zonas, y probablemente no valga la pena. Pero es tu decisión, por supuesto.

Zonas de alineación de la familia

Digamos que has terminado y todas las fuentes de tu familia tipográfica se ven bien, todas las alturas verticales están nítidas, todas las astas son consistentes, todo se ve realmente genial. Y de repente tienes la loca idea de hacer una presentación en cascada de tu Regular en InDesign, y por diversión, insertas el peso de Negrita entre cada Regular. Si tus fuentes están correctamente vinculadas al estilo, puedes alternar entre Regular y Negrita presionando Cmd-Shift-B. (Lee más sobre los enlaces de estilo en el tutorial Nombrar tus fuentes). Luego verás algo como esto:

¿Ves en la línea de 8 pt que la altura de x de la negrita es un píxel más alta? Ooh, eso no es lo que queremos, ¿cierto? Lo que necesitamos son áreas de alineación para toda la familia, no solo para cada fuente individualmente. Resulta que existe. Se trata de las Zonas de alineación de la familia, es decir, el parámetro personalizado Family Alignment Zones, que puedes establecer en Archivo > Información de la fuente… > Fuente (Cmd-I):

En la mayoría de los casos, es una buena idea duplicar las áreas de alineación de la fuente más importante de tu familia: generalmente es Regular o Book. Un rasterizador intentará alinear todos los pesos si la diferencia de altura entre la alineación de los pesos individuales y la familia es inferior a un píxel.

Tip profesional: si no tienes un máster Regular (por ejemplo, porque estás interpolando de Ligera a Negrita) y deseas saber cómo se verían las zonas de tu Regular, puedes deshabilitar todas las instancias excepto la de Regular, entonces ejecuta Archivo > Generar instancias. Se creará un nuevo archivo Glyphs con la instancia Regular como máster. A continuación, puedes leer las zonas desde Archivo > Información de fuentes… > Másteres.

Ahora que hemos agregado un parámetro apropiado Family Alignment Zones, podemos exportar nuevamente y probar en InDesign. Entonces, veamos si esto ayudó:

¡Fantástico, la Negrita de 8pt se ajusta a la misma altura de x que su contraparte Regular! Si tienes menos suerte y tus fuentes no se ajustan a la misma altura de píxel, considera experimentar con las posiciones y posiblemente también con los tamaños de las zonas de alineación de la familia.

Hinting manual como último recurso

Si algunos glifos continúan comportándose mal, primero verifica si cumplen con todos los criterios de la lista anterior. Corrige tus contornos y configuraciones donde sea necesario. ¿Aún nada? Es posible que debas realizar hinting manual en algunos glifos, porque el hinting automático no siempre puede producir resultados confiables y debes tomar el relevo. Pero solo tienes que hacer esto en el primer máster de los glifos que necesitan atención especial. Y por lo general, solo hay muy pocos de esos. Si es que los hay.


FUENTES UTILIZADAS EN LOS EJEMPLOS: HENRIETTE POR MICHAEL HOCHLEITNER, Y SEPHORA SANS POR MUCCA/SCHRIFTLABOR

Actualización 30-03-2015: reescritura parcial, mejores capturas de pantalla.
Actualización 19-02-2016: captura de pantalla Glyphs 2.
Actualización 03-12-2016: se agregó Preferencias de Accesibilidad del Sistema.
Actualización 27-05-2017: reescritura más amplia, se agregaron parámetros personalizados, complementos, scripts y capturas de pantalla.
Actualización 21-08-2018: se agregaron las tablas de blueScale y blueShift, algunas reescrituras en torno a ellas; se agregó el capítulo blueFuzz, reformulaciones menores aquí y allá.
Actualización 04-03-2019: se eliminaron las columnas incorrectas en la tabla blueShift.
Actualización 28-03-2019: se corrigió el número de zonas posibles y se enfatizó la necesidad de la zona de línea de base.
Actualización 03-04-2020: cambió ‘cuatro’ por 4 para una mejor coherencia.
Actualización 31-07-2020: se corrigió la palabra bowls.
Actualización 29-07-2022: título actualizado, artículos relacionados.
Traducción al español de Sol Matas.