ART - La bibliothèque Python qui transforme vos textes en œuvres d'art ASCII !

par Korben -

ART fait partie de ces bibliothèques Python qui vous vendent du rêve puisqu’avec elle, transformer n’importe quel texte en œuvre d’art ASCII ou en 1 line art devient un jeu d’enfant. Pour rappel pour les plus jeunes, l’ASCII art, c’est l’art de composer des images ou des motifs en assemblant astucieusement des caractères spéciaux et des lettres. Quant au 1 line art, il s’agit de créer des dessins minimalistes en une seule ligne, souvent des émoticônes ou des petits symboles.

Ça peut paraître un peu old school comme ça, mais ça en jette ! On se croirait revenu au temps des BBS et du Minitel. Il faut dire aussi que ce pixel art du pauvre revient grandement à la mode ces derniers temps.

Le créateur de cette lib, un certain Sepand Haghighi, est un véritable artiste du genre. Ce développeur est capable de transformer le moindre bout de texte en tableau psychédélique à l’aide de fonctions comme text2art, tprint ou tsave pour convertir votre texte, l’afficher dans le terminal ou le sauvegarder dans un fichier. Mais il peut aussi générer des 1 line arts avec les fonctions art, aprint et randart. Et là où ça devient complètement dingue, c’est quand vous commencez à jouer avec les options de personnalisation.

Il y a des tonnes de polices disponibles pour varier les styles. Des classiques comme le block ou le big, mais aussi des polices Non-ASCII complètement barrées genre fancyslant ou 3D-ASCII. Côté 1 line art, vous avez le choix entre une multitude de dessins allant du papillon au smiley en passant par la tasse de café, la femme ou le visage heureux. Le tout en une seule ligne de caractères !

Vous voulez donner un look Matrix à votre texte ? Utilisez la police matrix ! Un petit côté Moyen-âge avec des lettres gothiques ? Choisissez plutôt gothic ! Ou alors laissez-vous tenter par le mode aléatoire random pour un résultat surprenant à chaque fois, que ce soit en ASCII art ou en 1 line art.

Et je ne vous ai pas encore parlé des décorations… Bordures, lignes de séparation, motifs divers et variés pour encadrer votre texte ou vos 1 line arts. Tout y est ! Vous pouvez même encore utiliser le mode random pour obtenir un décor unique. Et rien ne vous empêche d’utiliser la fonction randart() pour générer des smileys ou des petits dessins ASCII aléatoires et les intégrer dans vos scripts. Imaginez la tête de vos collègues quand ils tomberont sur un magnifique (っ◕‿◕)っ au milieu de votre code.

Bon allez, je vous fais une petite démo pour vous montrer à quel point c’est facile et fun d’utiliser ART. Ouvrez bien vos mirettes, ça va envoyer du paté !

Pour l’installer, faites d’abord un

pip install art

Ensuite, importez le comme ceci dans votre script Python :

from art import *

Maintenant pour générer un texte en ASCII avec la police block, c’est comme ça :

block_text = text2art("Korben", font='block')
print(block_text)

Pour ne pas vous encombrer, vous pouvez aussi directement sortir l’ASCII dans le terminal avec tprint comme ceci (et une font random) :

tprint("Korben", font="random")

Ou pourquoi pas afficher un joli 1 line art de papillon avec aprint :

aprint("butterfly")
Ƹ̵̡Ӝ̵̨̄Ʒ 

Et pour enregistrer un texte ASCII directement dans un fichier texte :

tsave("Korben", filename="ascii_art.txt", font="epic")

Et pour les décorations, c’est comme ceci :

text = "Vous êtes formidables !"
for _ in range(10):
deco = decor("random", both=True)
print(deco[0] + text + deco[0])

Et pour les 1 line arts ou smileys random, c’est

smiley = randart()
print("Voici mon line art du jour : " + smiley)

Et voilà le résultat ! C’est pas magnifique franchement ?

Voici mon 1 line art du jour : ✌(◕‿-)✌

Alors, vous en pensez quoi ? Ça donne envie de se lancer dans l’ASCII art, non ? En tout cas moi j’adore !

Et si vous voulez voir tout ce que la bibliothèque a dans le ventre, n’hésitez pas à consulter la doc sur GitHub : https://github.com/sepandhaghighi/art. Tout est super bien expliqué !