QR Font – La police qui transforme du texte en QR code

Tapez [hello] dans votre éditeur, appliquez une police, et le mot se change en QR code scannable. Pas de générateur en ligne, pas d’image à exporter mais juste une police de caractères. C’est l’idée complètement barrée de
qr-font
, le projet de Jim Paris, et quand j’ai testé la démo, j’avoue, ça m’a plu.
Vous installez une des polices TrueType du projet, vous écrivez votre contenu destiné à devenir un QR code entre crochets, et le texte autour s’affichera tout à fait normalement.
Par exemple abc[hello]ghi vous donnera « abc », un QR code, puis « ghi », le tout sur la même ligne. Et comme rien n’est jamais transformé en image, votre QR code reste du texte pur. Vous pouvez le copier-coller comme un caractère lambda, le stocker en texte brut, ou encore le glisser au milieu d’un paragraphe dans n’importe quel document.

Le texte [https://korben.info] tapé avec la police QR Font 2-L : la police le transforme toute seule en QR code, sans aucune image.
Mais vrai tour de force surtout, c’est la fabrication de cette police car un QR code normalement, c’est une image dans laquelle un programme a encodé des données. Ce programme calcule une parité Reed-Solomon, position les petits carrés comme il faut, applique un masqieu par dessus et ensuite tout est exporté dans un PNG ou un JPG. Alors que là, tout le calcul se fait DANS le fichier de la police de catactère.
Pour reproduire l’algo Reed-Salomon, la police fait des maths toute seule comme une grande, sous la forme de règles OpenType.
C’est dans la lignée des bidouilles à base de QR Code dont je vous ai déjà causé comme ces
QR codes montés en LEGO
ou de ces
polices Unicode
qu’on détourne pour frimer dans sa bio Insta.
Forcément, c’est un proof-of-concept, donc il y a des garde-fous. En efet, chaque police ne peut encaisser que 17 caractères pour la version light, 32 pour la standard et 53 pour l’étendu. Donc vous ne pourrez pas y mettre une URL à rallonge. Par contre, un petit mot ou une URL classique, ça passe tranquille.
Notez aussi que les navigateur découpent le texte en ligne AVANT d’afficher les glyphes, ce qui veut dire qu’un de ces QR peut se retrouver coupé en 2 en fin de ligne. Mais y’a moyen de contourner le problème avec la règle CSS suivante sur le bloc et le tour est joué ! :
white-space: nowrap
Bref, c’est génial et pas si inutile que ça je trouve…
Source : korben.info