Présentation du projet

Le site jamaican-font.html propose une police personnalisée dont chaque glyphe reprend les couleurs du drapeau jamaïcain – noir, vert et or – pour former un alphabet complet. L’idée provient d’un post Reddit où le drapeau, stylisé en forme de X, sert de point de départ à la création de lettres. La police intègre directement les formes et les teintes dans les glyphes, ce qui permet à l’utilisateur de sélectionner, copier et rechercher le texte comme n’importe quel autre contenu.

Architecture technique du font coloré

Les couleurs sont encodées au sein du fichier de police grâce aux tables OpenType dédiées aux polices couleur (COLR/CPAL ou SVG). Ces tables associent chaque glyphe à un ou plusieurs calques de couleur, évitant ainsi le recours à des images raster. Le rendu dépend du moteur de texte du navigateur qui interprète les tables et applique les couleurs en temps réel. Le fait que le texte reste sélectionnable indique que le format utilisé est un vrai font (WOFF2 ou TTF) et non une image SVG statique.

@font-face {
  font-family: "JamaicanAlphabet";
  src: url("jamaican-alphabet.woff2") format("woff2");
  font-display: swap;
}
body {font-family: "JamaicanAlphabet", sans-serif;}

Ce fragment montre comment le fichier est chargé dans une page web. La propriété font-display: swap garantit que le texte apparaît immédiatement avec une police de secours, puis est remplacé dès que la police colorée est disponible.

Mécanisme de la variante connectée

Le « Connected Variant » décrit dans la page utilise des fonctionnalités contextuelles d’OpenType (GSUB/GPOS). Ces fonctionnalités détectent les paires de glyphes adjacents et substituent les formes de base par des glyphes de connexion qui ajustent la couleur de fond afin d’assurer une continuité visuelle entre les lettres. Concrètement, lorsqu’une lettre verte suit une lettre noire, le moteur applique une substitution qui modifie le contour de la seconde lettre pour qu’elle s’aligne sur le même fond que la première, créant ainsi un effet de chaîne.

Cette approche repose sur des tables de substitution définies par le créateur du font. Chaque règle indique, par exemple, que le glyphe U+0041 (A) suivi de U+0042 (B) doit être remplacé par A_conn et B_conn. Le processus est entièrement dynamique : aucune image n’est pré‑rendu, et le rendu dépend uniquement du texte fourni.

Limites et perspectives

Le principal frein technique réside dans la prise en charge des polices couleur par les navigateurs. Tous les moteurs ne supportent pas encore les tables COLR/CPAL, et certains limitent le nombre de calques par glyphe, ce qui peut réduire la fidélité des couleurs. De plus, les fonctionnalités contextuelles augmentent la taille du fichier font, ce qui impacte le temps de chargement sur les connexions lentes.

Sur le plan ergonomique, la police reste fonctionnelle pour la sélection et la recherche, mais les variantes connectées ne s’appliquent que lorsqu’elles sont explicitement activées via les OpenType features dans le CSS (font-feature-settings: "calt" on;). L’absence d’une documentation détaillée sur les règles de substitution rend difficile l’extension du jeu de caractères à d’autres alphabets ou à des scripts non latins.

En résumé, le Jamaican Font démontre comment les tables OpenType permettent de créer des alphabets visuellement intégrés aux symboles nationaux, tout en conservant les propriétés textuelles classiques. Son implémentation ouvre la voie à d’autres projets de typographie culturelle, à condition que les navigateurs continuent d’améliorer leur support des polices couleur et des substitutions contextuelles.