Hinting: le hinting TrueType manuel
Le hinting TrueType est le saint Graal de l’optimisation à l’écran. Il vous donne contrôle sur la forme rendue à l’écran de vos glyphes bien mieux que CFF/PostScript peut le faire. Bien que ce soit plus complexe de l’utiliser, c’est une technologie qui est aussi efficace question taille de fichier, et elle peut être appliquée rapidement une fois que vous l’avez bien saisie.
Avec ou sans hints?
Avant de nous plonger dans le hinting, ou encore ‘donner des instructions’, comme on réfère souvent au hinting TT, laissez-moi vous répéter mon mantra de hinting: le hinting est une technologie qui déforme vos contours afin qu’ils s’ajustent mieux sur la grille de pixels. Laissez cela bien s’intégrer: les hints ne sont pas là pour maintenir vos formes. Au contraire: les hints vont étirer, écraser, déformer vos formes sur les pixels de chacune des résolutions de taille de police. Le but est de maintenir la lisibilité avec une image de pixels—aux dépens de la précision des formes. En d’autres mots, ne faites du hinting à votre police seulement s’il est nécessaire de maintenir sa lisibilité à de très petites tailles en pixels.
Si, pour la police en question, la préservation des formes des lettres est plus importante que leur lisibilité, alors ne faites pas de hinting. Pour les polices d’affichage, scripts, aux contours complexes, les polices d’icônes: nul besoin de hinting. Les polices sans hinting feront meilleur usage de l’anticrénelage, qui préserve mieux les formes, mais qui devient trop flou à de très basses résolutions.
Supposons que la netteté et la lisibilité de votre police puissent bénéficier de la distorsion de ses contours. Pourquoi voudrions-nous le faire avec des hints TT? En bref: si la police est destinée à l’usage sur Windows.
Le hinting TT peut aussi faire une différence sur les appareils Android, quoique ces derniers font de l’optimisation à la volée même quand la police n’a pas de hinting. Si vous vous souciez donc des dispositifs Android, vous pourriez peut-être vous en tirer avec des polices sans hinting. Sur les appareils Apple, le hinting TT n’est pas du tout utilisé. Si votre police sera uniquement utilisée sur les Mac ou les iPhone, pas la peine de vous préoccuper du hinting.
Alors, votre police remplit-elle les conditions pour du hinting TT? Oui? Alors, poursuivez votre lecture.
Hinting TT automatique ou manuel
Souvenez-vous, lorsque vous faites du hinting PostScript (PS), vous laisserez habituellement l’algorithme de hinting prendre soin de toute la police, et vous n’interviendrez manuellement seulement si un glyphe ne s’en tire pas trop bien. En d’autres mots, avec PS, vous pouvez combiner dans une même police les glyphes avec hinting automatique et les glyphes avec hinting manuel.
Ce n’est toutefois pas le cas pour le hinting TT. Les hints TT sont plus complexes techniquement et requièrent la configuration d’informations supplémentaires dans le fichier de police. Cela se fait dans des tables spéciales nommées CVT, prep et fpgm. Bref, le hinting TT automatique et le hinting TT manuel créent chacun des versions très différentes de ces tables. Ce qui veut dire que, dans le domaine TrueType, le hinting automatique et manuel sont incompatibles, et il n’y a aucun moyen de les combiner dans une seule exportation de fichier de police.
Ne vous méprenez cependant pas: vous pouvez placer de l’information de hinting automatique et manuel dans le même fichier .glyphs
. Mais au moment d’exporter, vous devez faire un choix entre les deux. Vous pouvez soit activer l’option Autohint, et obtenir un fichier TTF Autohint, rien d’autre. Si l’option est désactivée, vous obtiendrez des hints manuels, rien d’autre.
Questions de taille de fichier
Il va sans dire que l’information de hinting prend de l’espace dans un fichier TTF. Nous avons obtenu les informations suivantes lors d’une comparaison rapide avec une police sans empattement:
- Sans hints: 15 ko
- Avec hints manuels, seulement horizontaux: 18 ko (+20%)
- Hinting automatique TTF: 24 ko (+60%)
Vous obtiendrez des résultats différents pour des polices différentes, bien sûr. Mais vous remarquerez le même schéma encore et encore: premièrement, pas de hinting résulte toujours par un fichier plus petit. Et bien, euh, vous pourriez dire, et vous auriez raison, que ce n’est pas étonnant. Mais il est plus petit avec une marge significative. Si vous créez donc vos polices pour un environnement où le hinting n’est pas important, envisagez un ensemble de fichiers de police sans hints, et votre administrateur web vous en remerciera. Deuxièmement, les hints manuels prennent beaucoup moins d’espace que le hinting automatique, et un facteur important est que vous pouvez opter pour que seuls vos fûts horizontaux soient considérés, alors que pour le hinting automatique il est plus difficile de réduire la taille du fichier.
Pour conclure, le hinting manuel a l’avantage de produire des fichiers plus petits et un meilleur contrôle sur ce qui sera inclus dans le fichier. Cela demande plus de travail, par contre. Ainsi que la lecture de ce long tutoriel. Désolé. Mais vous découvrirez deux choses qui rendront votre vie plus facile. Poursuivez votre lecture pour en savoir plus.
Fondements du hinting
Ceci s’applique aux hints PS et TT: dans une configuration à masters multiples, il vous suffit de faire le hinting d’un seul master. Par défaut, il s’agira de votre premier master, soit celui qui est en haut de la liste qui se trouve sous Fichier > Informations de police… > Masters. Dans certains cas, ce ne sera pas le meilleur choix. Imaginez que le premier master est ultra mince et ultra étroit. Faire les sélections de points nécessaires pour le hinting pourrait s’avérer difficile, vous voudrez donc plutôt sélectionner une variante medium comme master pour vos hints. Dans ce cas, ajoutez un paramètre personnalisé Get Hints From Master
dans Fichier > Informations de police… > Police, et sélectionnez un master facile à hinter:
Votre premier master, ou tout autre master que vous aurez choisi avec le paramètre personnalisé, sera votre ‘master principal.’ Cela fera une différence, vous le constaterez ci-après.
Vous pouvez aussi ajouter les hints TT aux contours PostScript depuis le mode Édition. Nul besoin de convertir en courbes quadratiques. En fait il est préférable de conserver les contours PS et laisser Glyphs faire la conversion. Les tracés seront convertis en courbes quadratiques lors de l’exportation et chaque police obtiendra les meilleures courbes TT possibles. Ce qui vous épargnera le souci de manipuler des courbes TT tout en maintenant leur compatibilité.
Donc, pour résumer: sélectionnez le master destiné au hinting et laissez vos contours PS tels qu’ils sont.
Hints de police: zones et fûts
Semblable au hinting PS, vous commencez par définir les zones et les fûts pour chaque master. Les zones et les fûts doivent avoir le même nombre et le même ordre dans tous les masters, pour que les valeurs puissent être interpolées. Cela ne devrait pas poser de problèmes car lorsque vous ajoutez un fût ou une zone dans un master, il ou elle est ajouté(e) au niveau de la police, pour tous les masters à la fois. Les définitions de zone et fût dans le master principal sont les plus importantes, car certains réglages ne peuvent être pris qu’à cet endroit.
Zones TrueType
Les zones aident à unifier l’alignement vertical des formes à travers toute la police. Lorsque les contours sont ajustés à la grille de pixels de l’écran, les extrêmes des formes verticales qui sont dans la même zone seront arrondies à la même hauteur, typiquement au bord d’un pixel. Pour un aspect cohérent de votre police qui soit à la fois ajustée à la grille et hintée, vous préférerez certainement avoir des zones aux mesures verticales comme la ligne de pied, la longueur des descendantes, la hauteur des ascendantes, des arcs de jambages, des chiffres, des nabiras, des capitales, des rekhas, des petites capitales, ou quoi que ce soit d’autre qui vous soit utile pour votre design.
Pour ajouter une zone, allez à Fichier > Informations de police… > Masters, puis ajoutez un nouveau paramètre personnalisé, sélectionnez la propriété TTFZones
, et pour finir, cliquez sur sa valeur pour ouvrir les réglages:
Si vous avez déjà déterminé des zones pour le hinting PostScript, vous pouvez les dupliquer dans vos zones TT: cliquez sur la roue dentée de menu et sélectionnez Get PS Zones, ce qui vous permettra d’obtenir les zones PS. Ou bien ajouter/supprimer les vôtres via les boutons plus et moins. Vous n’êtes pas limité à un certain nombre de zones, vous pouvez pratiquement en avoir autant que vous le voulez, et vous pouvez aussi avoir des ensembles de zones différents pour des ensembles de glyphes différents. Une fois que vous avez ajouté une zone, éditez ses réglages:
-
Position et taille: avant tout, une zone est définie par ces valeurs clés. Une zone supérieure a une taille positive, et une zone inférieure a une taille négative. Les zones supérieures sont destinées aux extrêmes supérieures verticales des formes, comme la hauteur d’x, la hauteur des arcs de jambages, des capitales ou des nabiras. Les zones inférieures sont destinées aux extrémités inférieures des formes, comme la ligne de pied, les descendantes, ou le bas des petits chiffres comme les numérateurs, les chiffres inférieurs et supérieurs.
Assurez-vous que la surface définie par la position et la zone inclut toutes les petits éléments qui doivent être égalisés au bord d’un pixel par le rastériseur. Par exemple, à la hauteur d’x, placez la position à la hauteur de votre x, et assurez-vous que la taille est suffisamment grande pour englober tous les dépassements, comme le o bas de casse. Si vous êtes familier avec les zones PS: c’est passablement la même chose.
-
Nom: c’est optionnel, mais vous pouvez donner un nom à votre zone. Le nom est arbitraire, mais c’est certainement une bonne idée de le choisir aussi descriptif que possible, en particulier si vous vous retrouvez à établir plusieurs zones. Vous devrez plus choisir vos zones à partir de menus contextuels dans l’interface, et vous serez alors heureux de vous y retrouver facilement. Une exception qui confirme la règle est
xHeight
pour la zone de la hauteur d’x, car elle reçoit un traitement spécial lors de l’ajustement à la grille. Dans les petits corps, il sera plus probable qu’une zone de ce nom sera arrondie, par rapport à toute autre zone.
-
Aligner: vous pouvez lier une zone à une autre avec l’option Aligner. Si une zone est alignée à une autre, la distance entre les positions des zones est arrondie et appliquée à la zone. Le résultat sera des transitions plus cohérentes lorsque la police passe d’une taille en pixels à une autre. Utilisez cela pour les hauteurs qui sont très proches l’une de l’autre, peut-être même qui se chevauchent, et qui pourraient apparaître l’une à côté de l’autre lors de la composition de texte, ce qui pourrait être perçu comme étant problématique si les hauteurs divergent trop lors de rendus à faible résolution. Des zones alignées seront affichées à la même hauteur si leur différence est moins d’un demi pixel; elles seront affichées à un pixel de distance si leur différence est d’un pixel ou plus, etc.
Dans le dessin de polices de caractères latines, la seule application sensée est de lier la hauteur des petites capitales à la hauteur d’x. Peut-être aussi l’ascendante à la hauteur des capitales, mais cela n’est habituellement pas nécessaire.
Exemple: les hauteurs d’x et des petites capitales sont arrondies individuellement à la grille de pixels, à certaines tailles une zone sera arrondie à la valeur supérieure puis à la valeur inférieure, alors que l’autre zone est arrondie à la hausse et à la baisse à différentes tailles. Comme résultat, les hauteurs d’x et des petites capitales sont les mêmes à PPC 12, elles ont deux pixels de différence à PPC 14, et sont les mêmes à nouveau à PPC 15. Le bond entre les tailles en pixels de 12 et 13 attirent particulièrement trop l’attention et nuisent à la lisibilité. Il est alors préférable de choisir le réglage Aligner de la hauteur des petites capitales à la hauteur d’x. Les zones ont maintenant la même hauteur en pixels jusqu’à un PPC de 13, et un pixel de différence pour les PPC de 14 et plus.
-
Ajuster finement les zones: avec l’icône delta (Δ), vous pouvez déplacer les zones d’un pixel vers le haut ou un pixel vers le bas pour des tailles de PPC et des instances spécifiques. Après avoir fait le hinting de votre police, ou du moins en avoir complété une grande partie, faites un test avec un spécimen de caractères en cascade (voyez plus loin, Tester votre TTF hintée*), puis déterminez où il vous faut élargir ou réduire vos zones. Cliquez de façon répététitive dans le champ respectif pour changer d’option: déplacer vers le haut (flèche vers le haut), déplacer vers le bas (flèche vers le bas), inchangée* (champ vide). Généralement, vous n’aurez besoin que d’une poignée de ces arrondissements. Notez que l’icône delta n’est disponible que dans le master principal.
-
Filtre: avec l’icône globe (🌐) dans la colonne la plus à droite, vous pouvez ajouter un filtre de glyphe. Cela est pertinent si vous avez besoin d’une zone que dans certains glyphes, p. ex., pour la hauteur d’x, la longueur des descendantes ou ascendantes seulement dans les bas de casse de l’alphabet latin; la hauteur des capitales seulement pour les capitales du latin, du cyrillique et du grec; la hauteur des nabiras dans l’arabe; la hauteur des arcs de jambages dans le gurmukhi et le devanagari; la hauteur des chiffres seulement dans les chiffres qui ont
.lf
dans leur nom, etc. Vous pouvez filtrer par nom de glyphe, catégorie, sous-catégorie et script (système d’écriture), et vous pouvez également combiner plusieurs filtres. En maintenant la touche Option enfoncée tout en cliquant sur le bouton plus, vous obtiendrez davantage d’options logiques sophistiquées. L’icône globe n’est disponible que dans le master principal.
Fûts TrueType
Les fûts aident à unifier les tailles affichées de l’épaisseur des traits à faible résolution. Lorsque le rastériseur repère des contours de parties différentes avec le même hint de fût, il essaiera de les afficher avec le même nombre de pixels. Cela peut aider à prévenir des situations où des fûts similaires sont arrondis à des tailles différentes à faible résolution. Par exemple, imaginez un c bas de casse sans empattement. En général, vous voudrez que le haut et le bas ait la même épaisseur. À une certaine taille de PPC, la partie du bas tombe sur la grille de pixel d’une telle manière qu’elle est affiché avec trois pixels, alors que la partie du haut n’en a que deux. Vous pourriez dire qu’il ne s’agit que d’une différence d’un pixel, mais dans ce cas il s’agit d’une différence de 50%. En appliquant le hint de fût horizontal aux deux parties assure qu’elles seront affichées avec le même nombre de pixels.
Généralement, vous voudrez un petit nombre de fûts. Il est habituellement préférable de trouver un bon juste milieu pour les fûts similaires, plutôt que de créer un douzaine de fûts afin de décrire toutes les épaisseurs de traits possibles. De cette façon, les fûts similaires seront arrondis au même nombre de pixels à basses resolutions.
Pour ajouter des fûts, allez à Fichier > Informations de police… > Masters, puis ajoutez le paramètre personnalisé TTFStems
. Cliquez sur sa valeur pour ouvrir les réglages:
Si vous avez déjà défini des fûts pour le hinting PostScript, vous pouvez choisir l’option Get PS Stems du menu de la roue dentée et les fûts PS seront reproduits en tant que fûts TT. Vous pouvez aussi ajouter et supprimer vos propres fûts avec les boutons plus et moins. Une fois que vous avez ajouté des fûts, vous pouvez éditer leurs propriétés:
-
Orientation: un hint peut se magnétiser soit ↔︎ horizontalement ou ↕︎ verticalement. Afin de changer l’orientation, cliquez tout simplement sur le bouton à la flèche double dans la colonne de gauche. Et maintenant, veuillez vous concentrer:
Vous appliquerez un hint ↕︎ vertical qui se magnétise aux formes des éléments horizontaux, comme la barre transversale d’un t bas de casse latin ou le 亖 CJC. D’un autre côté, bien sûr, un hint ↔︎ horizontal se magnétise aux courbes et fûts verticaux tel que le fût vertical et la courbe d’une lettre capitale D ou la syllabe vaï ꔖ. (Si tout comme votre humble traductrice vous ne connaissez pas le vaï, je vous épargne la recherche, il s’agit d’une langue du Libéria.)
Ou encore, prenez un L latin, qui est en fait idéal pour expliquer les deux:
Pour quelle raison est-ce que je vous dis cela? Et bien, l’ennui est que, les gens disent ‘hint horizontal’ alors qu’en fait ils veulent dire ‘un hint qui se magnétise verticalement pour un fût horizontal’. Et vice-versa. Donc, à chaque fois que vous parlez à quelqu’un de vos hints de fûts, assurez-vous bien que vous voulez dire la même chose. Ayez même un crayon et un bout de papier à portée de main pour faire un croquis. Ou n’en parlez à personne. Bah oui!
-
Nom: c’est optionnel, vous pouvez personnaliser le nom de votre fût. Le nom est arbitraire, mais c’est une bonne idée d’en choisir un qui soit aussi descriptif que possible, pour la même raison que les noms de vos zones.
-
Taille: le diamètre de fût moyen, mesuré en unités. Dans le rendu d’écran, des fûts de grosseur semblable seront unifiés et affichés avec le même nombre de pixels.
-
Arrondir les fûts: à l’aide de l’icône delta (Δ), vous pouvez établir l’arrondissement des fûts. Tout comme pour les zones, il n’est pas logique de déterminer vos arrondissements la première fois que vous définissez vos fûts. Faites plutôt un test avec un spécimen de caractères en cascade puis déterminez ensuite vos arrondissements. L’interface fonctionne de la même manière que pour les zones. Les lettres sont-elles trop foncées pour une graisse en particulier à une certaine taille de PPC? Arrondissez ce fût à la baisse. Si les lettres paraissent trop claires, arrondissez le fût concerné à la hausse. Important: les deltas de fûts ne sont seulement appliqués que pour les modes de rendus de style ClearType (aussi référé sous le nom Windows GDI).
-
Filtre: s’ajoute avec l’icône globe (🌐). Ajoutez un filtre afin d’appliquer un fût dans certains glyphes seulement. Vous pouvez filtrer par nom de glyphe, catégorie, sous-catégorie et script (système d’écriture). Les filtres de fût fonctionnent de la même façon que les filtres de zone le font, voyez ci-haut pour plus de détails.
TrueType BlueFuzz
Utilisez un paramètre personnalisé nommé TTFBlueFuzz
pour étendre toutes les zones TT du nombre spécifié dans sa valeur. La quantité spécifiée sera ajoutée à la fois au-dessus et au-dessous de chaque zone. La valeur par défaut est de une (1) unité.
Vous pouvez ajouter ce paramètre soit par Fichier > Informations de police… > Police, ou bien sous Masters, ou Instances. Si vous pensez que vous aurez besoin de la même extension de zone à travers toutes les interpolations de la famille, ajoutez-le dans Police. L’avantage de l’ajout dans Masters est que vous pouvez l’interpoler, par exemple, de zéro dans le master le plus maigre jusqu’à quatre dans le plus gras. Les instances interpolées recevront un nombre approprié entre ces deux nombres.
Cela peut être utile pour tester vos valeurs de fûts, ou encore pour corriger des imprécisions dans l’interpolation: même si les dessins se placent joliment dans les zones de tous les masters, ils pourraient quand même se retrouver à côté des zones dans les instances interpolées. De telles imprécisions peuvent être dues à des erreurs d’arrondissement. Donc: testez, voyez si les zones fonctionnent dans toutes les instances, et si ce n’est pas le cas, ajoutez un petit TTFBlueFuzz
.
Hints de glyphe: l’instructeur IU
Jetons un coup d’œil à l’interface d’utilisateur. De retour dans l’aperçu Édition, tapez et ouvrez une lettre, passez à l’instructeur TrueType (raccourci d’outil I), et sélectionnez un style dans la zone d’aperçu en bas. Souvenez-vous de rester dans la master principal, car c’est le seul endroit où cela a du sens d’ajouter des hints.
Voici à quoi ressemble un glyphe durant le hinting:
Les contours fidèles et les contours déformés
Premièrement, vous verrez deux contours colorés qui représentent le style couramment sélectionné, la taille de pixel et l’intention de rendu. Ils sont dessinés en plus du contour de master en noir de votre glyphe.
- Le contour bleu montre le contour interpolé et fusionné du style présentement sélectionné. Il est sans déformation, ou, en d’autres mots, c’est l’état du contour avant que les instructions et l’ajustement à la grille soient appliqués. Sélectionnez un style différent dans le menu contextuel dans le bas de la fenêtre. Vous pourriez avoir besoin de cliquer sur le symbole de l’œil et activer l’aperçu afin d’accéder à ce menu.
- Le contour rouge montre la version déformée de la même forme, c’est-à-dire, après l’application des instructions et l’ajustement à la grille selon l’intention de rendu courante (Grayscale, ClearType or DirectWrite) et la taille en pixels. Le contour rouge est tracé avec le code Microsoft actuel, et représented la exactement la distorsion de contour qui sera utilisée dans Windows en situation réelle. En d’autres mots, lorsque vous placez des hints TT pour Windows, vous façonnez ce contour rouge.
Bien entendu, si vous n’avez pas (encore) de hints dans votre glyphe, les contours rouges et bleus seront les mêmes.
Truc de pro: soyez vigilant avec l’aperçu pixel en arrière-plan: il ne s’agit que d’un exemple approximatif. Beaucoup de soi-disant ‘filtrage’ est effectué entre le moment où cette ligne rouge est passée à l’appli Windows et son apparition à l’écran. Le procédé de flitrage est sensible à tellement de facteurs ajustables (gammas, modes de couleur, transparences, etc.), qu’il ne fait aucun sens d’essayer de prédire l’image exacte en pixels. Maintenant vous connaissez la raison pour laquelle la même police a l’air légèrement différente dans chaque navigateur et appli.
Taille en pixels
Dans la boîte grise des informations, vous verrez un champ nombre nommé ‘px’. Il s’agit du PPC de l’aperçu courant. PPC est l’abréviation de pixels par cadratin et représente la taille en pixels réelle de la police. Cette mesure dit combien de pixels sont utilisés pour un cadratin. Vous pouvez voir un aperçu de la taille en pixels dans la grille de pixels en arrière-plan, avec un échantillon de rendu pour l’intention de rendu courante.
Un exemple: prenons pour acquis que votre police utilise 1000 UPC, et que votre taille courante en pixels est 12 PPC, un pixel est équivalent à (1000÷12 ≈) 83 unités.
Le nombre PPC est la vraie taille en pixels (px) contrairement au corps de police (pt). Si vous connaissez le corps en points, vous savez combien de points PAO (1 pt ≈ 0,3527778 mm) sont équivalents à un cadratin. Cependant, vous ne saurez jamais réellement combien de pixels seront utilisés pour le cadratin, car cela dépend de la résolution de sortie de l’environnement de rendu respectif. Même sur un écran en particulier, vous pouvez avoir des rendus de résolutions différents sur deux applications différentes, et ainsi vous retrouver avec des tailles en pixels différentes pour un même corps. Voilà pourquoi nous avons besoin d’une vraie mesure en pixels.
Vous pouvez changer la taille en pixels en saisissant un nouveau nombre. Ou encore, vous pouvez d’une taille en pixels à l’autre en cliquant sur les mini boutons haut/bas à côté du champ nombre ou en appuyant sur les touches point/virgule ou plus/moins sur votre clavier.
Intentions de rendu
Dans Windows, la représentation des glyphes en bitmaps dans une police TT peut être tracée de trois façons différentes, ou, pour le dire comme les nerds, de trois intentions de rendus différentes:
- Niveaux de gris le rendu applique quatre suréchantillonnages horizontaux et verticaux pour chaque pixel. Cela signifie que chaque pixel est subdivisé en (4 × 4 =) 16 parties de pixels. Selon combien de centres de ces subdivisions sont situés à l’intérieur des contours demandés, l’une des 16 valeurs de niveaux de gris sera utilisée pour dessiner le pixel respectif à l’écran.
- GDI ClearType, introduit dans Windows XP, 8×1 suréchantillonnages sont appliqués, c.-à-d., huits fois horizontalement mais sans aucun suréchantillonnage vertical. Ce qui signifie que les fûts horizontaux sont toujours affichés par un pixel entier. Cela peut être problématique pour les fûts très fins car ils deviendront beaucoup plus épais et même arrondis ou pratiquement horizontaux car les traits auront un effet en escalier.
- DirectWrite, souvent abrégé ‘DW’, est utilisé depuis Windows 7, utilise un suréchantillonnage de 5 × 5.
La bonne chose avec les intentions de rendus qui ont des suréchantillonnages égaux à la verticale et à l’horizontale est que vous pouvez les faire pivoter. Ils sont donc préférables pour les appareils mobiles qui ont besoin de passer du mode paysage au mode portrait, tout en maintenant l’apparence du texte. D’un autre côté, le rendu GDI ClearType, vous permet d’obtenir une très haute résolution de l’horizontale, ce qui est excellent pour le rendu des sous-pixels, mais il ne pivote pas, il n’est donc pertinent que pour les ordinateurs portables et de bureau. D’une certaine façon, DirectWrite est un bon compromis, car il a un nombre respectable de suréchantillonnage vertical, ce qui fait qu’il produit des rendus de sous-pixels fort décents, et en même temps il produit un très bon anticrénelage en niveaux de gris avec jusqu’à 25 tons de gris.
Truc de pro: bien que le GDI ClearType est encore accessible pour les développeurs Windows, il est sur son déclin depuis Windows 7. De nos jours il n’est guère en usage, c’est pourquoi vous pouvez ignorer l’intention de rendu ClearType. Si un client insiste pour que vous optimisiez la police pour le GDI ClearType, demandez si (1) il est vraiment, vraiment certain, (2) il sait ce qu’il demande et (3) veut payer une somme supplémentaire. Il doit au moins répondre à l’affirmative pour les questions 1 et 3.
Direction des hints
Au bord droit de la boîte grise des informations (Cmd-Shift-I), vous pouvez repérer le symbole d’une double flèche ondulée. Il indique l’orientation du hinting, ou encore la direction du hinting. Maintenant, svp, concentrez-vous bien:
- La fèche verticale double représente les hints orientés verticalement pour l’ajustement vertical des fûts horizontaux. En mode vertical, vous pouvez lier des points à des zones.
- La fèche horizontale double signifie que vous allez insérer des hints orientés horizontalement pour l’ajustement horizontal des fûts verticaux. En mode horizontal, vous pouvez aussi utiliser les AG et AD (approches gauches et droites) du glyphe: vous remarquerez deux points foncés un peu en-dessous des endroits où les approches croisent la ligne de pied.
Inverser les orientations en cliquant sur le symbole de flèche ou en appuyant sur la touche X de votre clavier. Vous serez quand même en mesure de voir une version atténuée en gris de vos hints pour l’autre orientation, mais cela prévient leur édition accidentelle.
Super truc d’utilisateur: pour tous les scripts horizontaux (de gauche à droite ou de droite à gauche), sélectionnez la double flèche verticale et concentrez-vous sur les caractéristiques horizontales de votre design, comme les fûts horizontaux, la partie horizontale des courbes, les empattements ainsi que les lignes horizontales en haut et en bas des fûts verticaux. Les convertisseurs modernes sont déjà plutôt adroits avec l’unification des fûts verticaux, et souvent, les fûts verticaux sont pris en charge par le rendu avec des sous-pixels. Vous vous retrouverez avec des instructions qui ne seront qu’à moitié aussi lourdes en termes de grosseur de fichier, ce qui est une bonne nouvelle pour les fontes web. Vous pouvez donc ignorer le mode horizontal.
Si vous voulez également faire le hinting de vos fûts verticaux, vous pourriez finir par modifier les chasses des glyphes ce qui pourrait changer les retours de ligne dans certaines tailles. Avec pour résultat, un utilisateur qui agrandit une page web pourrait voir le texte s’ajuster dynamiquement.
Insertion de hints au niveau du glyphe
OK, mettons maintenant nos mains à la pâte. Souvenez-vous, le but d’un hint est de déformer le contour afin qu’il puisse mieux s’ajuster à la grille de pixels.
Les hints seront appliqués, dans leur ordre chronologue, sur les points auxquels ils sont liés. L’ordre est important car les hints s’ajoutent l’un sur l’autre. Lorsqu’un hint est attaché à un point du contour, le point exécute le mouvement suggéré par le hint, et par le fait même devient un point ‘touché’. Après que tous les hints aient été appliqués, les positions de tous les points qui restent, ‘non touchés’, sont interpolées entre les points touchés les plus proches dans l’ordre de l’index de points. Cela est parfois référé en tant qu’instruction IUP/IPI, soit instruction Interpolate Untouched Points/Interpoler les points intouchés. (Note: Je n’utiliserai que l’expression en français pour le reste du texte.)
Vous pouvez toujours voir ce que vous faites si vous ouvrez la zone d’aperçu en cliquant sur le symbole de l’œil dans le bas. Lorsque l’outil Instructeur TrueType (I) est activé, l’aperçu se place à la verticale et se magnétise au bord droit de l’aperçu Édition, puis y affiche un spécimen en cascade des tailles PPC pour le texte courant, en utilisant le style et l’intention de rendu actuellement sélectionnés. Vous pouvez modifier la grandeur de l’aperçu en tirant sur la ligne de séparation, et en alternant entre trois niveaux de zoom en pixels à partir du menu contextuel. Vous pouvez aussi le faire glisser vers le haut et vers le bas pour changer la taille en PPC visible dans l’aperçu:
Généralement, pour ajouter une instruction, sélectionnez quelques nœuds et choisissez un type de hint à partir du menu contextuel ou encore appuyez sur la clé de raccourci clavier respective.
Points d’ancrage (A) ou ‘Magnétiser’:
Points d’ancrage: (raccourci clavier A) cette instruction arrondit la position d’un point précédemment non touché au bord de pixel le plus près. Afin d’appliquer une instruction Points d’ancrage, sélectionnez un ou plusieurs points non touchés et appuyez sur A
ou bien sélectionnez Points d’ancrage du menu contextuel. Vous pouvez ancrer plusieurs points à la fois.
Gérez les options de hint dans la boîte gris des informations (Cmd-Shift-I) pendant que le hint est sélectionné. À partir du menu surgissant, sélectionnez l’une des options suivantes:
- Auto: soit automatique; en mode vertical, si le point se trouve à l’intérieur de la zone, le point se magnétise sur le bord du pixel auquel la zone est arrondie. Vous pouvez contrôler l’arrondissement de zone avec le paramètre
TTFZones
. L’option auto est normalement ce que vous voulez. - No zone soit pas de zone, donne l’instruction d’ignorer complètement les zones. Dans ce cas il ne fera que rechercher le bord de pixel le plus près.
- N’importe lequel des zones nommées, le gardera à distance de la zone indiquée, et s’assurera que le nœud aligné ne se retrouvera pas du ‘mauvais’ côté de la zone. Cette instruction a pour but de garder les écarts, et non pas pour magnétiser à une zone. Utilisez-la pour les accents afin qu’ils ne touchent pas leurs glyphes de base, p. ex., pour le point sur le i bas de casse. Cela fonctionne de façon semblable à l’alignement d’une zone à une autre tel que décrit dans l’explication sur les
TTFZones
.
Les boutons à symbole suivants indiquent le genre d’arrondissement que l’instruction suscite:
- Arrondir (par défaut): arrondit le point au bord de pixel le plus près.
- Arrondir à la hausse, arrondit le point au bord de pixel le plus près vers le haut (en mode vertical) ou vers la droite (en mode horizontal).
- Arrondir à la baisse: arrondit le point au bord de pixel le plus près vers le bas (en mode vertical) ou vers la gauche (en mode horizontal).
- Sans arrondir: garde le point à sa position d’origine. Utile pour supprimer les effets IPI (interpoler les points intouchés).
- Arrondir seulement dans ClearType/GDI: comme Arrondir, mais seulement dans l’intention de rendu ClearType. Utile lorsque vous voulez vous assurer de l’anticrénelage dans les intentions Niveaux de gris et DirectWrite, où ClearType doit arrondir au plein pixel. N’a réellement de sens que pour le hinting horizontal des fûts car GDI ClearType n’a pas de suréchantillonnage vertical.
Hints de fût (S):
Hints de fût (raccourci clavier S) arrondissent les positions de, soit deux points auparavant intouchés, soit d’un point touché et d’un point intouché, d’une distance déterminée par le fût TT. Un hint de fût a un point d’origine et un point cible, et le point cible est celui qui est déplacé. Vous pouvez interchanger les points d’origine et cible en faisant un clic droit sur le hint de fût et en sélectionnant Inverser à partir du menu contextuel. Vous pouvez ajouter des hints de fût à de multiples paires de points en même temps, à la condition qu’un nombre pair de points soit sélectionné.
Les hints de fût qui débutent dans une zone ancreront automatiquement le point d’origine dans cette zone. Inutile donc d’ancrer un point puis d’ajouter ensuite un hint de fût par-dessus, mais ajoutez plutôt tout simplement qu’un hint de fût. L’outil Instruction est assez fûté pour placer le nœud dans la zone du point d’origine.
Sélectionnez le hint de fût en cliquant sur l’étiquette bleue afin de régler les options dans la boîte grise des informations. Le menu surgissant offrira un choix d’une variété de fûts:
- Auto (c.-à-d., Automatique): le hint utilisera le fût le plus près tel que défini dans le paramètre
TTFStems
. C’est la meilleure option si vous avez des fûts clairement distincts. - Named stems (c.-à-d., Fûts nommés): sélectionnez n’importe quel fût dans le menu; les noms que vous voyez correspondent aux définitions de fûts dans le paramètre
TTFStems
. Ne faites cela que si vous avez l’impression que le modeauto
produirait de mauvais résultats. - No stem (c.-à-d., Pas de fût): les points cibles ne sont pas alignés sur la grille, mais leur distance au point d’origine est maintenue, c’est-à-dire, le point cible est déplacé seulement si le point d’origine a été lui aussi déplacé. C’est la meilleure option si vous avez pour objectif une meilleure précision des formes dans les tailles moyennes de pixels (pas trop petites). Ou encore si vous pensez que les déformations dans l’environnement de rendu sont trop délirantes.
Les icônes sous le menu représentent les options de hint:
-
Arrondir: arrondit le point cible au bord de pixel le plus près.
-
Arrondir à la hausse: arrondit à la hausse la taille de fût, c.-à-d., magnétise le point cible au bord de pixel qui est le plus loin du point d’origine. Si votre hint de fût pointe vers le bas, ce sera en-dessous.
-
Arrondir à la baisse: arrondit à la baisse la taille de fût, c.-à-d., magnétise le point cible au bord de pixel qui est le plus près du point d’origine. Si votre hint de fût pointe vers le bas, ce sera au-dessus.
-
Sans arrondir (par défaut): n’arrondit pas le fût au bord de pixel, mais arrondit tout de même sa taille aux bords de suréchantillonnage fournis par l’intention de rendu courante.
-
Arrondir seulement dans GDI ClearType (le symbole A): même chose que l’option Arrondir, mais seulement pour l’intention de rendu GDI ClearType. Dans le cas d’un fût qui n’est pas adjacent à la zone, cette option aidera à maintenir au moins un bord du fût aligné avec le limite de pixel la plus près. C’est utile pour les barres des E et e, et fonctionne mieux en combinaison avec une instruction Interpoler (G):
Les largeurs de fûts prises du paramètre TTFStems
sont arrondies selon le surréchantillonnage des intentions de rendu respectives. Ce qui signifie que les fûts horizontaux sont arrondis aux pixels entiers dans ClearType et à un quart de pixel dans DirectWrite. Pour ne pas modifier cela, les fûts ne doivent pas être arrondis (en utilisant l’option Sans arrondir). Lorsque vous avez des fûts qui ne sont pas arrondis aux bords de pixels entiers cela signifie qu’au moins un des côtés aura une bordure grise. Le rendu sera un peu moins net, mais les détails du design seront bien mieux conservés. De plus moins de problèmes de déformations de contours se produiront, par exemple, il y aura moins de contreformes affaissées.
Avez-vous trois fûts horizontaux? Vous pouvez sélectionner les trois hints de fût en les Shift-cliquant tous de façon successive, ensuite en faisant un clic droit puis en sélectionnant Créer un hint triple du menu contextuel. Les hints de fût deviendront violet, ce qui indique qu’ils sont maintenant connectés et maintiendront au moins un pixel de distance même dans les pires circonstances:
Shift (F):
L’instruction Shift (raccourci clavier F) transfère le mouvement d’un point touché à un point intouché. De cette façon vous pouvez vous assurer que deux parties d’un glyphe adoptent la même déformation. Pour appliquer une instruction Shift, sélectionnez un point touché et un point intouché, puis appuyez sur F et sélectionnez Shift à partir du menu contextuel. Vous pouvez ajouter de multiples instructions Shift (F) avec le même point d’origine en même temps, si un point de votre sélection est touché (= point d’origine) et les autres sont intouchés (= points cibles).
Comme options, vous ne pouvez pas choisir un fût ou une zone, bien entendu, mais vous pouvez toutefois choisir l’alignement:
- Arrondir: arrondit le point cible au bord de pixel le plus près.
- Arrondir à la hausse: arrondit le point cible au bord de pixel qui se trouve le plus près au-dessus.
- Arrondir à la baisse: arrondit le point cible au bord de pixel qui se trouve le plus près au-dessous.
- Sans arrondir (par défaut): conserve le mouvement transféré exactement comme il est. C’est ce que vous voulez dans 99,9% des cas.
- Arrondir seulement dans GDI ClearType: comme Arrondir, mais seulement pour GDI ClearType.
Bon exemple: les jambages d’un n latin sans empattement. Vous ancrez le jambage gauch dans la zone de la ligne de pied, mais après avoir ajouté un hint de fût pour l’arc de jambage, l’autre jambage est désynchronisé"
Cela se produit car le long du tracé, l’effet de l’instruction Points d’ancrage (A) dans le bas à gauche est interrompu par l’instruction Fût (S) dans le haut. Par conséquent, pour le jambage droit, l’IPI (interpoler les points intouchés) qui en découle ne peut extrapoler que la distorsion causée par l’instruction Fût (S), et non l’instruction Points d’ancrage (A). En réalité, l’instruction Points d’ancrage (A) est restreinte au jambage gauche.
Vous pouvez donc ajouter une instruction Shift (F) à partir du point touché (ancré) sur la gauche à l’un des points sur le jambage gauche:
L’instruction Shift (F) reproduit le mouvement du jambage gauche dans le jambage droit, faisant du point cible un point touché. De cette façon le jambage droit fera toujours le même mouvement que le jambage gauche. Encore mieux, un m latin bas de casse:
Vous pourriez demander, pourquoi ne pas tout simplement ajouter l’instruction Points d’ancrage (A) sur la droite? Deux raisons: premièrement, l’instruction Shift (F) gère la mémoire plus efficacement que les autres hints. Si vous pouvez donc réaliser ce qu’il vous faut avec un hint Shift (F), vous sauverez une bit ou deux. Deusièmenet, il y a toujours le risque qu’une seconde instruction arrondisse accidentellement différemment, ce qui peut causer un gros gâchis. Je sais, cela ne devrait pas se produire si les hints se trouvent tous les deux dans la même zone, mais vous ne savez jamais.
Interpoler (G):
L’ instruction Interpoler (raccourci clavier G) maintient un point auparavant intouché à la même position relative en relation avec deux points touchés comme dans les contours d’origine sans instructions. Pour appliquer une instruction Interpoler, sélectionnez deux points touchés et un troisième point intouché. Appuyez ensuite sur la touche G ou sélectionnez Interpoler à partir du menu contextuel.
L’intention principales des hints Interpoler (G) est de remédier aux effets secondaires indésirables d’IPI. Typiquement, vous rencontrerez des ouvertures bouchées ou des contreformes qui disparaissent. Vous pouvez alors utiliser une instruction Interpoler pour garder le fût médian à la même distance relative des fûts externes (déjà touchés), comme dans le e bas de casse:
Comme options, vous ne pourrez choisir un fût ou une zone, bien sûr, mais vous pouvez toujours choisir l’alignement:
-
- Arrondir:* se magnétise au point cible au bord de pixel le plus près. Choisissez ceci si vous voulez placer un hint de fût superposé sur le point cible.
-
Arrondir à la hausse: se magnétise au point cible au bord de pixel le plus près au-dessus.
-
Arrondir à la baisse: se magnétise au point cible au bord de pixel le plus près en-dessous.
-
Sans arrondir (par défaut): conserve la position interpolée sans l’arrondir. C’est habituellement l’option désirée.
-
Arrondir seulement dans GDI ClearType: se magnétise au bord de pixel le plus près seulement pour l’intention de rendu GDI ClearType, les autres devraient demeurer tels quels.
-
Arrondir: arrondit le point cible au bord de pixel le plus près.
-
Arrondir à la hausse: arrondit le point cible au bord de pixel qui se trouve le plus près au-dessus.
-
Arrondir à la baisse: arrondit le point cible au bord de pixel qui se trouve le plus près au-dessous.
-
Sans arrondir (par défaut): conserve le mouvement transféré exactement comme il est. C’est ce que vous voulez dans 99,9% des cas.
-
Arrondir seulement dans GDI ClearType: comme Arrondir, mais seulement pour GDI ClearType.
Diagonale (D):
Les instructions diagonales (raccourci clavier D) maintiennent l’inclinaison relative et la proportion des diagonales (comme dans A, K, V, W, X, Y et Z) dans le GDI ClearType. Pour insérer un hint Diagonal (D), sélectionnez n’importe lequel des quatre points puis choisissez Diagonal à partir du menu contextuel ou encore appuyez sur D.
Cela règle un problème particulier de rendu ClearType, qui présente une énorme disparité entre le suréchantillonnage horizontal et vertical: alors que les points ne peuvent se magnétiser verticalement qu’aux bords de pixels entiers, ils se magnétisent aux huitièmes horizontalement. Cela crée des déformations inégales lorsque vous regardez les tailles PPC ou bien les graisses les unes après les autres: elles croissent de façon régulière horizontalement, mais seulement par pixels entiers verticalement. Lorsqu’un hint Diagonal (D) est appliqué, les croissances horizontales et verticales seront mal synchronisées.
Remarquez comment, une fois que le hint Diagonal (D) est appliqué, les diagonales du contour en rouge deviennent beaucoup plus fines afin que les tailles verticales et horizontales restent synchronisées.
Les hints en diagonale (D) ne sont vraiment utiles que pour les rendus GDI Cleartype, et considérant qu’ils sont de plus en plus rares sur le marché, ne valent peut-être pas la peine. Ils sont complexes techniquement et par le fait même ajoutent relativement pas mal de taille au fichier de la police.
Delta (E):
Une instruction delta (raccourci clavier E) déplace un point vers le haut ou vers le bas d’un pixel précisément, mais seulement dans un style de police statique spécifique (instance) et pour une taille PPC spécifique. Les hints deltas (E) sont destinés pour les corrections de pixel finales après que tous les autres hints ont été appliqués. Pour ajouter un hint delta, sélectionnez n’importe quel nombre de points et appuyez sur E ou sélectionnez Delta du menu contextuel. Sélectionnez ensuite un ou plusieurs hints deltas, cliquez sur l’icône delta (Δ) dans la boîte grise des informations, puis cliquez de façon répétitive sur une case d’une combinaison spécique taille/style afin d’alterner entre un pixel de plus (flèche verte vers le haut), un pixel de moins (flèche bleue vers le bas), et pas de changement (case vide):
Gardez à l’esprit que les hints deltas (E):
- devraient être utilisés avec parcimonie, et certainement le moins possible,
- devraient être ajoutés en dernier, après tous les autres hints,
- sont ignorés dans les polices variables, et,
- ne sont disponibles que pour le hinting vertical (↕︎).
Stratégies de hinting
Ces astuces se sont avérées utiles pour le hinting TrueType hinting:
- Conserver vos courbes PostScript cubiques. Attachez simplement vos hints aux points PS de Bézier. Nul besoin de convertir en courbes quadratiques ou encore d’orienter les tracés en miroir ou bien de préparer vos contours de manière spéciale. Il serait même contreproductif si vous le faisiez car dans les exportations de polices statiques, Les conversions PS à TT peuvent construire sur mesure le tracé idéal pour chacune des interpolations.
- Utilisez les raccourcis claviers (A, S, D, F, G, E, X) pour ajouter des hints et modifier les orientations. Ils sont tous faciles d’accès avec la main gauche. Au cas où vous auriez un clavier avec une disposition différente, c’est-à-dire, où la rangée médiane de lettres ne commence pas par ASDFG, cela sera pour vous quand même la rangée médiane de touches. Par exemple, sur un clavier français AZERTY, les touches sont QSDFGEX au lieu de ASDFGEX. Si vous utiilsez la main gauche pour votre souris, essayez de placer votre main droite sur la partie gauche du clavier.
- Débuter dans les zones, fonctionne mieux avec les hints de Fûts (S) ou Points d’ancrage/Magnétiser (A).
- Ensuite allez-y vers l’intérieur avec des hints Alignr/Transférer (F) ou Interpoler (G).
- Évitez les hints deltas (E) autant que possible.
- N’ajoutez jamais des hints diagonaux (D) à moins de vraiment savoir ce que vous faites.
- Utilisez aussi peu de hints que possible. Évitez de compliquer excessivement le hinting dans un glyphe.
- Dans les accents combinés, débutez avec une instruction Points d’ancrage/Magnétiser (A) sur le point le plus près d’une ancre
_top
ou_bottom
, puis reliez le hint à la zone dans laquelle se situe l’ancre de connection. Par exemple, danscaroncomb
, vous ancreriez le point le plus bas, puis choisiriez la hauteur d’x à partir de la zone pop-up dans les options du hint. - En mode Aperçu Police (Cmd-Opt-1), utilisez un filtre fûté pour afficher seulement les glyphes qui ont des contours, car ce sont ceux qui sont appropriés pour le hinting. Ensuite de retour en mode Édition, déplacez-vous parmi les glyphes sélectionnés dans l’aperçu Police avec Shift-Pg. préc. et Shift-Pg. suiv. Sur les claviers MacBook compacts, appuyez sur Fn-Shift-Flèches gauche ou droite.
- Lorsque vous faites des tests, oubliez GDI ClearType. Concentrez-vous sur Grayscale et DirectWrite.
Points qui se chevauchent:
Vous pouvez ajouter des hints sur tous les nœuds qui sont affichés lorsque l’outil Instructeur TrueType (I) est activé, incluant les points qui se trouvent dans le chevauchement. Dans les exportations de polices statiques, bien sûr, les chevauchements de tracés seront supprimés. Par chance, Glyphs est assez fûté pour déplacer le hint au point d’intersection le plus près lorsque la suppression du chevauchement est exécutée. Par conséquent, des deux hints sont équivalents dans les polices statiques:
Dans les polices variables, cependant, les chevauchements ne sont pas supprimés. Les hints qui sont attachés à ces points d’intersection sont ignorés. Donc, si vous voulez faire le hinting de polices statiques ou variables, choisissez le nœud dans le chevauchement, puisque ce nœud est le nœud actuel auquel le hint sera attaché dans l’OTVAR, alors que dans les polices statiques, le hint sera déplacé dans l’intersection résultante. En résumé, considérez deux choses lorsque vous faites le hinting de vos OTVAR:
- Hints deltas; ils sont ignorés lors des exportations de polices variables.
- Hints qui utilisent les points d’intersection (‘ nœuds extras’) car les nœuds d’origine ou nœuds cibles seront également ignorés.
Plus de paramètres personnalisés
Si vous approfondissez le hinting TT, cela peut devenir… et bien, spécial. Voici donc des paramètres supplémentaires pour votre technophilie TT:
-
TTFOvershootSuppressionBelowPPM
: avec lui, vous pouvez définir une taille de pixel jusqu’à laquelle les zones de dépassement sont égalisées de façon fiable. En combinaison avec des zones TTF définies correctement, vous avez un bon contrôle de l’apparence de vos polices TT. -
TTZoneRoundingThreshold
dans Informations de police > Police ou Informations de police… > Styles (ce dernier est à prioriser dans les polices statiques, bien entendu): contrôle la probabilité qu’une zone soit repoussée vers le haut d’un pixel. Il prend un petit nombre décimal comme valeur, en général quelque chose autour de 0,1 ou 0,2. La valeur est ajoutée à n’importe quelle position de zone positive avant l’arrondissement, et ajoutée deux fois à la zone de la hauteur d’x (celle qui est nommée xHeight dans les zones TrueType). Si vous ne la définissez pas, une valeur par défaut de 0,09375 est utilisée.Exemple: à un certain corps de police, la zone petites capitales se termine à 6,45 pixels et la hauteur d’x à 5,25 pixels. Sans aucun changement, la zone petites capitales s’arrondira et se magnétisera à une hauteur de 6 pixels, alors que la hauteur d’x se retrouverait à 5 pixels. Mais vous avez défini un TTZoneRoundingThreshold de 0,2, alors la hauteur des petites capitales se retrouve à (6,45+0,2=6,65≈) 7 pixels et la hauteur d’x à (5,25+2×0,2=5,65≈) 6 pixels.
-
TTMinimumDistance
dans Informations de police… > Styles: la valeur par défaut est 0,25, ce qui signifie que n’importe quel fût avec du hinting sera dessiné avec une longueur minimum d’un quart de pixel, peu importe la grandeur PPC, si un hint de fût y est appliqué. Si la valeur par défaut de 0,25 pixels ne vous satisfait pas, vous pouvez définir votre propre distance minimum (en pixels) avec ce paramètre. Cette valeur entre en fonction pour les petites tailles en pixels, lorsque les petits éléments du design sont menacés de disparition.
-
Prep Table Assembly
,Fpgm Table Assembly
,CVT Table
: Glyphs crée automatiquement ces paramètres lorsque vous importez des TTF qui ont du hinting. Ils contiennent le hinting existant sous forme de code assembleur ou une simple liste de valeurs, respectivement. Cela n’est utile que si vous voulez corriger certaines choses dans une police TT sans toucher au hinting TT existant. Techniquement, il s’agit du troisième type de hinting TT que Glyphs supporte.
-
gasp Table
définit ‘l’ajustement à la grille et la procédure de balayage et conversion’ pour les polices TrueType. Elle contrôle les deux seuils de PPC pour lesquels le comportement recommandé de rendu à l’écran est modifié. La tablegasp
contient les recommandations de rendu pour le traditionnel rendu en valeurs de gris et le rendu ClearType par sous-pixels. Cependant, gardez à l’esprit qu’un convertisseur peut ignorer les données stockées ici. Les seuils par défaut des tailles sont de 8 et 20 PPC. Comme il y a deux seuils, trois écarts peuvent être différenciés:- Pas de hinting ni de rendu nuancé: jusqu’au premier seuil, aucun ajustement à la grille n’est appliqué, et le texte est rendu avec de l’anticrénelage quand c’est possible. ‘Dans les très petites tailles, la meilleure apparence sur les engins de nuances de gris peut habituellement être obtenue avec un rendu de glyphes en nuances de gris sans utiliser de hints.’
- Hinting sans rendu nuancé: entre les deux seuils de tailles, le convertisseur est recommandé d’appliquer l’ajustement à la grille et de supprimer les nuanes de gris. ‘Pour les tailles intermédiaires, le hinting et le rendu monochrome produisent habituellement la meilleure apparence.’ Dans ClearType, l’affaire est gérée de façon asymétrique, c’est-à-dire que l’ajustement vertical à la grille est appliqué alors que horizontalement, le rendus en sous-pixels est utilisé.
- Hinting et rendu nuancé: au-delà de ces deux seuils, le rastériseur a comme instruction d’ajuster à la grille et de nuancer en gris les formes. ‘Dans les grandes tailles, la combinaison du hinting et du rendu en nuances de gris produira habituellement la meilleure apparence.’ Le rastériseur ClearType a comme instructions d’appliquer le lissage symétrique, c’est-à-dire, d’utiliser l’anticrénelage dans toutes les directions en plus du rendu par sous-pixels. ‘Dans les tailles d’affichage à l’écran, […] cette nouvelle amélioration du convertisseur de polices Windows donne des résultats plus lisses et des polices à l’apparence plus nettes’ (source: Now Read this: The Microsoft Cleartype Font Collection, Microsoft 2004, p. 14).
-
Keep Overlapping Components/Conserver les composantes qui se chevauchent
etKeep Transformed Components/Conserver les composantes transformées
: techniquement, TrueType supporte les composantes qui se chevauchent ou qui sont déformées (mises à l’échelle, inclinées, en miroir et tournées). Cela n’est pas directement lié au hinting, mais davantage au TrueType en général, il vous permet de maintenir une petite taille de fichier, ce qui peut être utile pour vos polices web. Mise en garde: ce ne sont pas tous les environnements qui sont capables de gérer les composantes transformées, utilisez donc ces paramètres sagement et faites des tests exhaustifs.
Réglages utiles, scripts et extensions
Faites un clic droit avec votre souris n’importe où sur le canevas pour ouvrir le menu contextuel.
Si l’outil Instructeur TrueType (I) est activé et que des points sont sélectionnés, vous pouvez voir des options pour ajouter des hints appropriés à votre sélection courante. Peu importe votre sélection, vous verrez des options TT supplémentaires:
-
Hinting automatique: tente de déterminer les hints de Fût (S) et de Magnétiser (A) pour le glyphe courant. Ne peut gérer les hints Shift (F), Diagonaux (D) ou Interpoler (G). Destiné comme point de départ, mais sans plus. Le résultat n’est pas toujours un hinting valide et vous pourriez recevoir un message d’erreur qui dit, Un problème a été rencontré lors de la compilation des instructions TrueType. Cela peut cependant vraiment être un bon départ, et vous pouvez traiter par lots plusieurs glyphes à la fois.
-
Supprimer les hints: supprime tous les hints TT dans le glyphe courant. Pour une suppression des hints plus raffinée, voyez le script qui se trouve plus loin.
-
Afficher l’adresse de l’aperçu...: démarre un serveur web et affiche son URL avec l’adresse IP courante:
Collez-le dans le navigateur web, de préférence dans votre virtualisation Windows, afin de visualiser une cascade de PPC du texte qui se trouve présentement dans l’aperçu Édition, avec le style sélectionné, rafraîchi à chaque deux secondes:
-
Afficher les index de points: affiche les nombres d’index des points sur courbe du contour qui en résulte. Il existe un réglage caché nommé
TTPreviewAlsoShowOffCurveIndexes
qui affiche tous les nombres d’index des points, en incluant les points hors courbes:Vous pouvez soit exécuter
Glyphs.defaults["TTPreviewAlsoShowOffCurveIndexes"]=True
dans Fenêtre > Panneau des macros. Ou, utiliser le script mekkablue App > Set Hidden App Preferences: -
Les options Agrandir l’aperçu: Maintenir l’échelle de l’aperçu, Agrandir l’aperçu 2×, Agrandir l’aperçu 4×. Définissent le zoom pixel pour l’aperçu en mode Édition.
Afin de supprimer des hints de façon plus spécifique, utilisez le script mekkablue Hinting > Remove TT Hints. Cela vous permet de supprimer des hints de certains types et orientations:
Les scripts mekkablue Hinting > Set TT Stem Hints to Auto et Set TT Stem Hints to No Stem changent tout les hints de fûts (S) dans les glyphes sélectionnés aux options de fûts respectives. No Stem (pas de fût) améliore l’apparence des polices variables dans les applis Adobe, alors que Auto donne un rendu plus net, ce qui paraît habituellement mieux dans les applis Windows Office.
Aussi dans les scripts mekkablue, se trouve le script Test > Webfont Test HTML à utiliser après avoir exporté votre police en format web. Le script écrira un HTML pour tous les styles présents dans la police courante qu’il placera dans le plus récent dossier d’exportation de police web, et ouvrira ensuite ce dossier dans Finder. Cela facilite les tests de police dans un navigateur Windows.
Mise à jour 2020-09-16: ajout des mots ‘are meant’ dans la version en anglais dans la section Position & taille et correction de quelques erreurs typographiques. Ajout des mots manquants ‘number in between’ dans la section TrueType BlueFuzz. Autres corrections mineures et réécriture.
Mise à jour 2020-11-03: correction de quelques erreurs typographiques et reformulation mineure (merci Nathalie et Ben!).
Traduction française de Nathalie Dumont.