Questa guida insegna come convertire le immagini in formato ASCII in Linux. Ai fini di questa attività, utilizzeremo Jp2a . Jp2a è uno strumento da riga di comando che ti aiuta a convertire le immagini date in formato carattere ascii. Puoi specificare una combinazione di file immagine e URL e lo strumento Jp2a li convertirà tutti in caratteri ascii all'istante. Jp2a ha molte opzioni utili per manipolare le immagini. Ecco alcune cose che Jp2a può fare per te!
- leggere le immagini dallo standard input
- imposta la modalità sfondo su chiaro o scuro
- imposta il confine,
- imposta l'altezza e la larghezza dell'output,
- imposta una dimensione personalizzata per le immagini di output,
- capovolgi l'immagine di output verticalmente o orizzontalmente,
- utilizza caratteri specifici durante la produzione dell'immagine ASCII di output,
- inverti le immagini,
- scarica le immagini dal Web e convertile
- E molti.
Installa Jp2a in Linux
Jp2a è incluso in molte distribuzioni Linux ed è disponibile nei repository predefiniti.
Per installare Jp2a su Arch Linux e le sue varianti come Manjaro Linux, esegui:
$ sudo pacman -S jp2a
Su Debian, Ubuntu, Linux nuovo:
$ sudo apt install jp2a
Su Fedora:
$ sudo dnf install jp2a
Su CentOS/RHEL:
$ sudo yum install epel-release
$ sudo yum install jp2a
Su openSUSE:
$ sudo zypper install jp2a
Convertire le immagini in formato ASCII in Linux
Per convertire una determinata immagine JPG/JPEG in formato carattere ASCII, esegui semplicemente:
jp2a <path-to-image>
Esempio:
$ jp2a arch.jpg
Risultato di esempio:
MWXMWXWWXWWXWWXWWXWMXWMXNMNNMNNMNNMNNMNXWNXMWXWWXWWXWWXWMXWMXNMXNMNNMNNMNNMNXMNXMW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWdxWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNkccxWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNW0ccccOWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWKlccccc0WNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNXlccccccl0WWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNocccccccclXWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNdccccccccccoXWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNkccccccccccccoXWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNkccccccccccccccdNWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNkccccccccccccccccdNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWXxccccccccccccccccdXWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNNWNOoOXNklccccccccccccccdNWNWWNWWNWWNNWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNOccccok0kdcccccccccccccoXWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNWWNNOcccccccccodoccccccccccccoXWWNWWNWWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNkccccccccccccccccccccccccccoNWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNWWNNWNNWNNWNNWWNWWNWWNkccccccccccccccccccccccccccccoXWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNkccccccccccccccccccccccccccccccoKWWNWWNNWNNWNNWNNWNNWWNWW WWNWWNWWNWWNWWNWWNWWNWWNxcccccccccccccccccccccccccccccccclXWNNWNNWNNWNNWNNWNNWNNWW NWWNNWNNWNNWNNWNNWWNWWXdcccccccccccccccccccccccccccccccccclKWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNNdccccccccccccccccccccccccccccccccccccl0NWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWXoccccccccccccccccdx0Oxdlcccccccccccccccl0WNWWNNWNNWNNWNNWWNWW NWWNWWNNWNNWNNWNNWWKlcccccccccccccclkXWWNWWNNOlcccccccccccccccOWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNKlcccccccccccccclKNWWNWWNWWNXocccccccccccccccONWNNWNNWNNWNNWWNWW WWNWWNWWNWWNWWNWW0lcccccccccccccclXNNWNNWWNWWNWNoccccccccccccccckWNNWNNWNNWNNWNNWW NWWNNWNNWNNWNNWNkccccccccccccccccONWWNWWNWWNNWNNXccccccccccccccccdNWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNkcccccccccccccccclNWNNWWNWWNWWNWWNdcccccccccloolcccdNWNNWNNWNNWWNWW WWNWWNWWNWWNWWxcccccccccccccccccoNWNNWWNWWNWWNWWNkcccccccccccoxO0OddNNNWNNWNNWNNWW NWWNNWNNWNNWXdccccccccccccccccccoWNWWNWWNWWNNWNNWkcccccccccccccclxKNXWWNWWNWWNWWNN WWNWWNWWNWWXoccccccccccccccccccccXWNNWWNWWNWWNWWNdcccccccccccccccccoOXNWNNWNNWWNWW WWNWWNWWNWXocccccccccccccccldxk00XWNNWNNWWNWWNWWNK0kxdlcccccccccccccccxKNNWNNWNNWW NWWNNWNNWKlccccccccccldxO0NWNWWNWWNWWNWWNWWNNWNNWNNWNNWXK0xdlccccccccccl0WNWWMMMMM WWNWWNWWOccccccccoxOXNWNWWNWWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNKOxoccccccccOWNWMMMMM WWNWWNWOcccccox0NNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNN0xoccccckNNMMMMM NWWNNWkccok0XNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNN0xocckWNWWNW WWNWNxdOXWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNXOxxNNNWW NWWNXNNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWNXWWNN
Semplice, vero?
Puoi specificare più immagini e convertirle tutte in una volta sola.
$ jp2a img1.jpg img2.jpg
Questo comando converte le immagini date in ASCII e le visualizzerà una dopo l'altra.
Come ho già detto, Jp2a ha molte opzioni e flag per manipolare le immagini di input. Vediamo l'utilizzo di alcune opzioni con esempi.
Leggi le immagini dallo standard input
Per leggere le immagini dallo standard input e stampare i caratteri ASCII nello standard output, utilizzare pipe comando come di seguito.
$ cat arch.jpg | jp2a -
Presta attenzione al simbolo del trattino (-) alla fine.
Scrivi l'output su un file
Invece di visualizzare l'immagine ASCII nell'output standard, puoi scriverla su un file come mostrato di seguito.
$ jp2a arch.jpg --output=arch_ascii
Questo comando aggiungerà l'output ASCII in un file di testo chiamato arch_ascii . Puoi visualizzare il contenuto del file usando il comando "cat":
$ cat arch_ascii
Stampa immagini con altezza/larghezza specifica
Puoi convertire l'immagine in formato ASCII e stamparla con un'altezza o una larghezza specifica a tua scelta.
Per stampare utilizzando un'altezza specifica, ad esempio 30 righe, esegui semplicemente:
$ jp2a --height=30 arch.jpg
La larghezza verrà calcolata automaticamente in base alle proporzioni dell'immagine.
Allo stesso modo, per specificare la larghezza, eseguire:
$ jp2a --weight=30 arch.jpg
Puoi anche combinare entrambe le opzioni e stampare l'immagine.
$ jp2a --height=20 --width=40 arch.jpg
Stampa immagini in formato ASCII in X colonne e Y righe
Il comando seguente converte il file immagine specificato in ASCII e stampa l'output in 50 colonne e 30 righe.
$ jp2a --size=50x30 arch.jpg
Risultato di esempio:
Imposta il bordo sui caratteri ASCII
Se vuoi impostare un bordo attorno all'output ASCII, usa bordo opzione come di seguito:
$ jp2a --border --size=50x30 arch.jpg
Risultato di esempio:
Stampa immagini su sfondo chiaro/scuro
Jp2a ha opzioni per stampare i caratteri ASCII su sfondi chiari e scuri.
$ jp2a --background=light arch.jpg
$ jp2a --background=dark arch.jpg
Stampa immagini in formato ASCII su sfondo scuro
Se visualizzi un'immagine con sfondo bianco, ma stai utilizzando un display con caratteri chiari su sfondo scuro, devi invertire l'immagine utilizzando inverti bandiera.
$ jp2a arch.jpg --invert
Risultato di esempio:
. . . . . . . . . . . . . . . . . . . :; ,oo; .oooo' .looooo. .looooool. cooooooool. :ooooooooooc. ,ooooooooooooc. ,oooooooooooooo: ,oooooooooooooooo: .;oooooooooooooooo:. 'c'. ,loooooooooooooo: 'ooooc,.,:oooooooooooooc. 'oooooooooc:cooooooooooooc. ,ooooooooooooooooooooooooooc ,ooooooooooooooooooooooooooooc. ,ooooooooooooooooooooooooooooooc. ;ooooooooooooooooooooooooooooooool. .:ooooooooooooooooooooooooooooooooool. :ooooooooooooooooooooooooooooooooooool. .coooooooooooooooo:;.';:loooooooooooooool. .looooooooooooool,. 'looooooooooooooo' .looooooooooooool. .cooooooooooooooo' .looooooooooooool. cooooooooooooooo, ,oooooooooooooooo' .oooooooooooooooo: ,ooooooooooooooool :ooooooooolcclooo: ;oooooooooooooooooc ,oooooooooooc;'.':: .:ooooooooooooooooooc ,ooooooooooooool;. . .coooooooooooooooooooo. :oooooooooooooooooc'. .coooooooooooooool:;,... ..,;:looooooooooooooo;. .looooooooool:;'. ...;:looooooooool. 'ooooooooc;'. .';coooooooo' 'oooooc;. .;cooooo, ,ooc,.. .;coo, ;:'. .';; . .
Stampa immagini solo con caratteri specifici
Invece di stampare l'immagine con i caratteri predefiniti, puoi utilizzare alcuni caratteri personalizzati a tua scelta.
$ jp2a --size=50x30 --chars=" [email protected]@" arch.jpg
Scarica le immagini direttamente da Internet
Non solo immagini locali, è possibile scaricare direttamente le immagini da Internet e convertirle in ASCII.
Per scaricare le immagini direttamente da Internet e stamparle in formato ASCII, eseguire:
$ jp2a --size=50x30 https://upload.wikimedia.org/wikipedia/commons/d/dd/Linux_logo.jpg
In alternativa, usa arricciatura o wget programmi per scaricare le immagini e jp2a leggerà l'immagine dallo standard input come di seguito.
$ curl -s https://upload.wikimedia.org/wikipedia/commons/d/dd/Linux_logo.jpg | jp2a -
Convertire immagini diverse da JPG/JPEG
Cosa succede se hai un tipo di immagine diverso da JPG/JPEG? In tal caso, puoi utilizzare Converti di ImageMagick strumento come di seguito. ImageMagick è disponibile nei repository predefiniti di molte distribuzioni Linux.
Su Arch Linux e le sue varianti come Manjaro Linux:
$ sudo pacman -S imagemagick
Su Debian, Ubuntu, Linux Mint:
$ sudo apt install imagemagick
Dopo aver installato ImageMagick, eseguire il comando seguente per convertire l'immagine in formato PNG data in formato Jpeg/Jpg e quindi convertirla in formato ASCII:
$ convert arch.png jpg:- | jp2a -
Si prega di notare il simbolo del trattino (-) alla fine.
Allo stesso modo, puoi semplicemente convertire qualsiasi formato immagine in JPEG/JPG e poi convertirlo di nuovo in formato ASCII.
Produci output HTML rigoroso
Jp2a ha un'opzione per produrre un output XHTML 1.0 rigoroso.
$ jp2a --size=50x30 --html arch.jpg --output=arch.html
Risultato di esempio:
<?xml version='1.0' encoding='ISO-8859-1'?> <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <head> <title>jp2a converted image</title> <style type='text/css'> body { background-color: black; } .ascii { font-family: Courier; color: white; font-size:8pt; font-weight: bold; } </style> </head> <body> <div class='ascii'><pre> MNWNWNWWNWNWNMXMNWNWNWWNNXWNWXMXWNWNWNNWNWNWXMXWNW NWNWNWWWWNWNWNWNWNWNWWWWkkNWNWNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWNWWWKccKWNWNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWNWWNoccoNNWNWNWNWWWWWWNWNWNWNWN WNWNWWWWWWNWNWNWNWNWWWOcccckWNWNWNWNWWWWNWNWNWNWNW WNWNWWWWNWNWNWNWNWNWWXlcccccKNWNWNWNWWWWNWNWNWNWNW WNWWWWWWWWNWNWNWNWWWNdcccccclNWNWNWWWWWWWWNWNWNWNW NWNWNWWWWNWNWNWNWNWNOccccccccxNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWXlccccccccc0WNWNWWWWWWNWNWNWNWN WWWWWWWWWWWWWWWWWWNNkccccccccclXWWWWWWWWWWWWWWWWWW WNWNWWWWNWNWNWNWNWxlkKdccccccccoNNWNWWWWNWNWNWNWNW WNWNWWWWWWNWNWNWNOccccddocccccccxNWNWWWWNWNWNWNWNW WWWWWWWWWWWWWWWWKccccccccccccccccOWWWWWWWWWWWWWWWW NWNWNWWWWNWNWNWXlcccccccccccccccccKWWWWWWNWNWNWNWN NWNWNWWWWNWNWNNdcccccccccccccccccclXNWWWWNWNWNWNWN WWWWWWWWWWWWWWxccccccccccccccccccccdNWWWWWWWWWWWWW WNWNWWWWWWNWNOccccccccccccccccccccccxNWWNWNWNWNWNW WNWNWWWWWWNWKccccccccclx0OklcccccccccOWWNWNWNWNWNW WWWWWWWWWWWXlccccccccoXWWWWXdccccccccc0WWWWWWWWWWW NWNWNWWWWNNocccccccclNWWNWNWNocccccccclXWNWNWNWNWN NWNWNWWWWNdcccccccccOWWWNWNWNKcccccccccoNNWNWNWNWN WWWWWWWWNxccccccccccXWWWWWWWWNlcccccldlcoNWWWWWWWW WNWNWWWWOcccccccccccNWWWWNWNWNocccccccx0O0NWNWNWNW WNWNWWW0ccccccccccccXWWWWNWNWNlcccccccccdKNWNWNWNW NWNWNWKlcccccccccodkXWWWNWNWNNkdocccccccccdKWNWNWN NWNWNXlccccccdk0NNWNWWWWNWNWNWNWNN0kdcccccclXNWMMM NWNWNoccclx0NNWNWNWNWWWWNWNWNWNWNWNWWN0xlccclXWMMM WNWNdclkKNNWNWNWNWNWWWWWWNWNWNWNWNWWWWWWNKklcdNWMW WNWkxKNWWWNWNWNWNWNWWWWWWNWNWNWNWNWNWWWWNWNWKxkWNW NWXNNWWNWNWNWNWNWNWNWWNWNWNWNWNWNWNWNWWNWNWNWNNNWN </pre> </div> </body> </html>