Este artículo del diseñador tipográfico Santhosh Thottingal explora un enfoque avanzado para el diseño de fuentes, centrándose en la creación de curvas suaves y personalizables. Tradicionalmente, Thottingal ha utilizado MetaPost, una herramienta poderosa pero anticuada (desarrollada en los años 80 y basada en MetaFont de Knuth) para diseñar sus fuentes, incluyendo la exitosa Manjari, que utiliza splines espirales para lograr una estética particular en la escritura malayalam. Sin embargo, MetaPost presenta limitaciones significativas debido a su obsolescencia y su complejo entorno de desarrollo (escrito en WEB y generando código Pascal).
El artículo profundiza en la matemática y la semántica de las curvas suaves, destacando el trabajo de Raph Levien, un experto en la materia. Levien desarrolló en 2018 un nuevo enfoque para el ajuste de curvas suaves basado en una técnica de dos parámetros, que permite un control más intuitivo y flexible sobre la forma de las curvas. Esta técnica, implementada en JavaScript, permite ajustar la curvatura de forma precisa, evitando las transiciones abruptas entre secciones curvas y rectas, un problema común en el diseño de fuentes. La clave está en la capacidad de definir tangentes explícitas en los puntos de control, lo que permite una transición suave hacia secciones rectas.
Thottingal está trabajando en un sistema de diseño tipográfico paramétrico moderno, inspirado en MetaPost pero optimizado para el diseño de fuentes. Su implementación actual en Rust utiliza el algoritmo de ajuste de curvas de dos parámetros de Levien, lo que le permite crear fuentes con trazos de grosor variable (variable fonts) que mantienen la interpolabilidad. El proceso de ajuste de curvas se divide en tres fases: preprocesamiento, optimización (ajuste de ángulos de tangente para minimizar discontinuidades de curvatura) y renderizado. El artículo también menciona un método de corrección de errores basado en esqueletos para solucionar problemas de continuidad en las uniones de segmentos de trazo, manteniendo la interpolabilidad. En esencia, el objetivo es crear un sistema que ofrezca un control preciso y una estética agradable en el diseño de fuentes, superando las limitaciones de las herramientas tradicionales.
