À ma droite, Cufón. À ma gauche, Typeface.js. Lequel choisir ?
J’avais une petite préférence pour Typeface.js, je ne sais pas exactement pourquoi, peut-être parce que je l’avais découvert avant Cufon (oui je sais il manque l’accent !).
Typeface.js est rapide, très rapide, surtout sous IE. C’est son gros avantage. Il est aussi plus simple à implémenter car il s’applique automatiquement aux H1 à H6 et aux éléments dont la classe est “typeface-js”. Le reste se passe via la feuille de style.
Jusque là, vous allez me dire: vive Typeface.js !
Oui mais, car il y a un mais…
La conversion des polices via l’outil de Typeface.js n’est pas simple et il faut parfois avoir recours à fontforge pour désactiver certains options d’embedding “OS2” (???). Et surtout, le script échoue lamentablement s’il est appelé depuis une page imbriquée via une iframe générée par un overlayer style lightwindow, fancybox et consor. browserStyle is not defined? Il semble se perdre dans les méandres du DOM…
De l’autre côté, l’outil de conversion de Cufon est une merveille, il accepte la plupart des polices sans broncher et permet de limiter leur usage à un ou plusieurs domaines. Il propose même des options obscures que les typo-puristes reconnaitront sûrement. Moi je me suis contenté de la valeur par défaut. Un piège à éviter toutefois : ne spécifiez pas de font-family sous peine de voir ensuite le moteur de rendu s’emméler les pinceaux entre les différentes graisses.
Et ça fonctionne même dans les iframes sus-nommées. Que demande le peuple !
Une intégration automatique? Il faut en effet “appliquer” Cufon sur les éléments voulus à la main. Cela permet notamment de forcer une police sur un élément dont la déclaration font-family ne correspondrait pas dans la CSS, ce qui n’est pas forcément la meilleure idée. Heureusement, ce dernier reconnait les sélecteurs jQuery pour notre plus grand bonheur – veillez juste à charger jQuery avant Cufon pour qu’il reconnaisse ceux-ci ;-)
Update 29/09/2009: En fait la détection automatique du font-family est également disponible dans Cufon mais désactivée par défaut pour contourner un bug dans Opera. Voir les Options de l’API.
Update 06/10/2010: J’entends souvent dire que le texte n’est pas sélectionnable dans Cufon, c’est FAUX. On ne voit en effet pas la sélection dans tous les browsers, mais elle est toutefois effective !