FIGlets: Creiamo un generatore ASCII Art in Python

ascii art python

Con un modulo scritto in Python, quattro metodi e una trentina di righe di codice, realizzeremo un generatore di testo ASCII art in Python.

Presentazione

FIGlet è un programma dei primi anni ’90 per creare grandi scritte su terminale a partire dal testo ordinario, una forma di ASCII Art. Prende il nome dalle iniziali degli ideatori Frank, Ian e Glen.
Possiamo vedere alcuni esempi dei font supportati dalla applet nel relativo link.
Da allora, l’applicazione è stata portata anche su Python, utilizzando l’omonimo modulo figlets.
Oggi vedremo come utilizzarlo.

Uso

Il modulo è documentato nel link di pypi. Come sempre, i più curiosi potranno spulciare il sorgente per capire come funziona.

Il nostro programma, invece, è interamente contenutio In un file chiamato figlet.py che prevede zero o due argomenti della riga di comando:

  • Zero se l’utente desidera visualizzare il testo in un carattere casuale.
  • Due se l’utente desidera visualizzare il testo in un font specifico, nel qual caso il primo dei due dovrebbe essere -f o –font, e il secondo dei due dovrebbe essere il nome del font.

Una volta lanciato, il programma richiede all’utente una stringa di testo, per stampare quel testo nel font esteso desiderato.

Se l’utente fornisce due argomenti della riga di comando, e il primo non è -f o –font o il secondo non è il nome di un font, il programma esce tramite sys.exit con un messaggio di errore.

Installazione

E’ possibile installare pyfiglet con il comando:

La documentazione per pyfiglet non è sempre molto chiara, ma potremo usare il modulo come segue:

È quindi possibile ottenere un elenco di caratteri disponibili con codice come questo:

Per impostare il carattere occorre definire f, il nome del font passato come stringa:

Per generare output in quel font usiamo il metodo render(s), in cui s è la stringa di testo da inviare:

Lancio

Vediamo di seguito una serie di esempi di testo in ASCII Art generati con questo semplice programma in Python.

 

Link utili

 

Join our groups on Telegram…

… and don’t forget our social channels!

Definire ciò che si è non risulta mai semplice o intuitivo, in specie quando nella vita si cerca costantemente di migliorarsi, di crescere tanto professionalmente quanto emotivamente. Lavoro per contribuire al mutamento dei settori cardine della computer science e per offrire sintesi ragionate e consulenza ad aziende e pubblicazioni ICT, ma anche perche’ ciò che riesco a portare a termine mi dà soddisfazione, piacere. Così come mi piace suonare (sax, tastiere, chitarra), cantare, scrivere (ho pubblicato 350 articoli scientfici e 3 libri sinora, ma non ho concluso ciò che ho da dire), leggere, Adoro la matematica, la logica, la filosofia, la scienza e la tecnologia, ed inseguo quel concetto di homo novus rinascimentale, cercando di completare quelle sezioni della mia vita che ancora appaiono poco ricche.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.