Convertir texto o imagen a arte de caracteres ASCII

Escrito por el .
gnu-linux planeta-codigo software-libre
Enlace permanente Comentarios

El arte ASCII es utilizar caracteres para obtener una composición que simula una imagen o dibujo. Es posible convertir texto a arte de caracteres ASCII o una imagen en formato svg, jpeg o png a texto. En GNU/Linux hay herramientas de línea de comandos que permiten crear arte ASCII tanto para texto como para imágenes. En internet también hay disponibles páginas que ofrecen el servicio de generar arte ASCII sin necesidad de instalar ningún software en la propia computadora.

GNU

Linux

Con la combinación adecuada de caracteres y varias líneas de texto es posible crear composiciones artísticas de texto, formando un arte ASCII basado en múltiples caracteres. El arte ASCII permite crear dibujos o convertir una frase en un texto en forma de dibujo.

El arte ASCII es adecuado para ser mostrado en interfaces basadas en texto como la terminal del sistema operativo. En GNU/Linux hay utilidades de línea de comandos que permiten crear arte ASCII, también hay páginas web que proporcionan la funcionalidad sin necesidad de instalar ningún software en el sistema.

Texto a arte de caracteres ASCII

La herramienta figlet de linea de comandos permite convertir una frase a arte ASCII, es posible configurarla con diferentes estilos de fuente que producen resultados diferentes en el arte ASCII. Utilizando caracteres de escape de la terminal es posible añadir colores, Jansi es una librería Java que permite añadir colores a texto emitido en la terminal.

Además de instalar el paquete de figlet en la distribución de GNU/Linux hay que descargar los archivos de las fuentes para generar el arte ASCII con el estilo deseado. La fuente se indica en el comando con el parámetro -f.

1
2
3
4
5
6
$ figlet -w 240 "Blog Bitix"
$ figlet -f ~/Descargas/alphabet.flf -w 240 "Blog Bitix"
$ figlet -f ~/Descargas/3-d.flf -w 240 "Blog Bitix"
$ figlet -f ~/Descargas/lean.flf -w 240 "Blog Bitix"
$ figlet -f ~/Descargas/slant.flf -w 240 "Blog Bitix"
$ figlet -f ~/Descargas/univers.flf -w 240 "Blog Bitix"
figlet.sh
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Font: standard
 ____  _             ____  _ _   _
| __ )| | ___   __ _| __ )(_| |_(___  __
|  _ \| |/ _ \ / _` |  _ \| | __| \ \/ /
| |_) | | (_) | (_| | |_) | | |_| |>  <
|____/|_|\___/ \__, |____/|_|\__|_/_/\_\
               |___/

Font: alphabet
BBBB  l          BBBB      t
B   B l          B   B ii  t  ii
BBBB  l ooo ggg  BBBB     ttt    x x
B   B l o o g g  B   B ii  t  ii  x
BBBB  l ooo ggg  BBBB  ii  tt ii x x
              g
            ggg

Font: 3-d
 ******    **                    ******   **   **   **
/*////**  /**           *****   /*////** //   /**  //
/*   /**  /**  ******  **///**  /*   /**  ** ****** ** **   **
/******   /** **////**/**  /**  /******  /**///**/ /**//** **
/*//// ** /**/**   /**//******  /*//// **/**  /**  /** //***
/*    /** /**/**   /** /////**  /*    /**/**  /**  /**  **/**
/*******  ***//******   *****   /******* /**  //** /** ** //**
///////  ///  //////   /////    ///////  //    //  // //   //

Font: lean
    _/_/_/    _/                          _/_/_/    _/    _/      _/
   _/    _/  _/    _/_/      _/_/_/      _/    _/      _/_/_/_/      _/    _/
  _/_/_/    _/  _/    _/  _/    _/      _/_/_/    _/    _/      _/    _/_/
 _/    _/  _/  _/    _/  _/    _/      _/    _/  _/    _/      _/  _/    _/
_/_/_/    _/    _/_/      _/_/_/      _/_/_/    _/      _/_/  _/  _/    _/
                             _/
                        _/_/

Font: slant
    ____  __               ____  _ __  _
   / __ )/ /___  ____ _   / __ )(_) /_(_)  __
  / __  / / __ \/ __ `/  / __  / / __/ / |/_/
 / /_/ / / /_/ / /_/ /  / /_/ / / /_/ />  <
/_____/_/\____/\__, /  /_____/_/\__/_/_/|_|
              /____/

Font: univers
88888888ba   88                               88888888ba   88           88
88      "8b  88                               88      "8b  ""    ,d     ""
88      ,8P  88                               88      ,8P        88
88aaaaaa8P'  88   ,adPPYba,    ,adPPYb,d8     88aaaaaa8P'  88  MM88MMM  88  8b,     ,d8
88""""""8b,  88  a8"     "8a  a8"    `Y88     88""""""8b,  88    88     88   `Y8, ,8P'
88      `8b  88  8b       d8  8b       88     88      `8b  88    88     88     )888(
88      a8P  88  "8a,   ,a8"  "8a,   ,d88     88      a8P  88    88,    88   ,d8" "8b,
88888888P"   88   `"YbbdP"'    `"YbbdP"Y8     88888888P"   88    "Y888  88  8P'     `Y8
                               aa,    ,88
                                "Y8bbdP"
figlet.txt

Texto convertido a arte de caracteres ASCII

Imagen a arte de caracteres ASCII

También es posible convertir una imagen a arte ASCII, en el caso de las imágenes el resultado ha de tener un número adecuado de líneas y columnas para producir resultados con la suficiente definición para obtener resultados fieles a la imagen original.

La herramienta jp2a permite convertir una imagen a arte ASCII. Basta con indicar la imagen fuente y personalizar las opciones del resultado como la anchura de caracteres con la opción –width. Utilizando las tuberías del intérprete de comandos es posible combinar el resultado de un comando que procese o transforme la imagen y se la proporcione como entrada a jp2a, en este caso para utilizar formatos no soportado por jp2a convirtiéndolo previamente a uno soportado permite obtener el arte ASCII.

La herramienta jp2a combinada con el extraer un fotograma de una película permite generar el arte ASCII de un momento de una película.

1
2
3
4
5
6
7
$ jp2a --width=80 --invert ~/Descargas/blogbitix-750.png
$ jp2a --width=80 --invert ~/Descargas/blogbitix-750.jpg

$ convert ~/Descargas/archlinux.svg jpg:- | jp2a --width=80 --invert -
$ convert ~/Descargas/linux.svg jpg:- | jp2a --width=80 --invert -
$ convert ~/Descargas/gnu.svg jpg:- | jp2a --width=80 --invert -
$ convert ~/Descargas/gnome.svg jpg:- | jp2a --width=80 --invert -
jp2a.sh
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
                                      .                                        
                                       l'                                       
                                      coo.                                      
                                     :oooo.                                     
                                    ;oooool.                                    
                                   ,oooooool.                                   
                                  .oooooooool                                   
                                 ...;ooooooool.                                 
                                'ool:;:looooool.                                
                               'oooooooooooooool.                               
                              ,oooooooooooooooool.                              
                             ;oooooooooooooooooool.                             
                            ;oooooooooooooooooooool.                            
                           :ooooooool'.  .:ooooooooo.                           
                          cooooooooc       'ooooooooo'                          
                        .cooooooooo         ,ooooooooo;                         
                       .looooooooo:         .ooooooc:;:;                        
                      .loooooooooo:         .ooooooool;.                        
                     'oooooooooc;,.          ';:loooooool,                      
                    ,ooool:,..                    .';looooc                     
                   ;ol:'.                              .;col.                   
                  ''.                                      .,.                  
                            .ld.         :. ..                                  
  ..''..    ..  ..    ..    'kk.         o.                                     
 ,kxdxkkx' ;kkokko,okkkkkko.'kdokkkkxc.  o. '. .,.,,,,;.  ,.      :  ,.   .'    
 ,ccllckkd ;kkl. 'kko'. .,. 'kkc   .xko  o. ;. ,c      c. :'     .o   ;, ':     
okkc,;okkd ;kk'  ckk.       'kk.    xko  o. ;. ,;      :. :'     .o    'o,      
xko   .kkd ;kk'  'kkl.   .. 'kk.    dko  o  ;. ,,      c. :'     .l   .:.;'     
.dkkdxkoxd ;kk'   .okkxdkkd.'kk.    dko  o  :. ;,      c. 'c.  .';l  ;'   .;    
  .:c;.',. .,.       ,cc:.  .:,     c:.  .  .  ..      '   .:ll; ., ..     ..   

                                   .,:cllc:,.                                   
                               .lONMMMMMMMMMWXk:.                               
                             .OMMMMMMMMMMMMWkkKWWx.                             
                            .XMMMMMMMMMMMMMN0KNWMMN;                            
                            dMMMMMMMMMMMMMMMMMMMMMMW;                           
                            XMMMWNWMMMMMMMMMNXWMMMMMX                           
                           .MMNkxx0XMMMM0oc:lx0NMMMMMc                          
                           .MX.',..kMMMc  ,,. ,NMMMMMx                          
                           .WO,WOk.:WNX  OMKO. dMMMMMd                          
                            XN'0WK;:lco,.OMMN' xMMMMMd                          
                            0MO'c'''..''..;:'.:WMMMMMX                          
                            xXl'............,,'KMMMMMMc                         
                            lXl,.........,,,'':NMMKKNMN.                        
                            :Mdll;,,,,,,,',,'''kMMXxd0MO                        
                            OMc.;lc:;;;;;,.    .0MMMNWMMO.                      
                          .OMX.  .;::;,.         kMMMMMMMX'                     
                         cNMk.     ...            KMMMMMMMWl                    
                       .0MMx                      .NMMMMMMMMK.                  
                      oWMMK'                       ;WMMMMMMMMWc                 
                     kMMMNo;.      .        ..',;;,.lMMWWMMMMMM0.               
                    kMWMWl.                      .';.oMMNXNMMMMMK.              
                   xMNNMl                           ..oMMWNWWMMMMX.             
                  :MNNWc                               kWXNWKWMMMMX.            
                 .NNNW:                                ,MMMMWKMMMMMO            
                .XMWMO                                  XMMMMNMMMMMMc           
               .XMXWM;           '                      kMMMMWMMMMMMX           
              .NMMKNN            '                      xMMMXXMMMMMMM'          
              xMMMNKX           .'                      kMMWKWMMMMMMM'          
              'xc:o0K.          .'                      KWNNWWNNXKWMO           
             .......c0d.         .                  ....lMMMMMMMMX0d.           
            '........'kW0;                          '..'dMMMMMMMWx...           
      ....,,...........cNMNd.                     .':..'cd0XXXKk:....           
    .'..................;KMMM0;                   .;c'..',::::;'......          
    .'...................'xWMMMc                  .:l,..................        
    .,.....................lX0x'                  oKo;.....................     
    .,......................'.                 .cXMKl,......................    
    .........................,:'          .':dKMMMMkc'....................      
    .........................':kN0kxxkO0KNMMMMMMMMNo:'..............'...        
    ..,;;;;,,,'''...........',coNMMMMMMMMMMMMMMMMMKo:,'........',;,'...         
      ...',;::cccc;,,'''''',:cox0kddooolllccclodxOOol:;,,,,,;:c:;.....          
        ........',;::ccccccll:,..................'';oolllclll:'.....            
            ...........',,,'...              ........',,,,'.....                

           .,ccccllllllll,                                .;::::::;.            
        ,;;,'  .:;';loc::l:;,                          ',;;,,,. .'.''','        
     ,:;. .cKXNXollc;;o;.,' .''lo                  c,''..;;ldcddxkKkko .;:'     
   ;l' .0WMMd.;:,,,,'',,,,,''','                   .'.....''...''':;:XNKo 'c,   
  :;  xWMK;.'c,                                                   .;;':0MK: ,c  
 :,  cMMX; c,               .''''''''''      .'........              :,;NMX. 'c 
,c  :MMW..o.             .:;. .':clc;'.,:' .dl .,cc:'  ',.            ;':MMX  :,
o   oMMK.o.            .:, 'l0WMMMMMMMNo.,ldxOlkXXMMMNOc.';.           ;,NMX,  l
l  .0MMo.o            :; ;0MMMMMMMMMMMMMWd   ,c ,k0MMMMMNo.,:          ; kMW:  o
l  .OMMk.d          ;c.'0MMMMMMMMMMMMMMWNO    :  ,0MMMMMMMX:.;.        :.KMN:  o
o   cWMK'l;       ;c..xWMMMWN0xolloddl,. ':.   '''';lNOkKNMM0'',.     .,cWMK,  d
l' .:0MM; ;l'  .:c',kWNx;..      'l.    . .',';o.    o.   'dWWd.','..;,.xMMd. .d
.d  .xWMWN, ','::oKNd,       .d;0Mk     .co.  ,l; ;Kd.',    .OMW0o:.,,;NMMNc  o'
 ,c  c0MMMWNNodNMM0.        ,d. dc ....,.  '.     K0.. ;      dMMMM0NMMMMWd. :, 
  'c  'oNWMMMMMMM0.        ..      ..'';k   l.    O,,;::       kMMMMMWW0d.. c'  
   .l; ..,KxMNWW0.           .    dkkMMK,.   .    oONMNx.      .0MXKdd'.  ;c.   
     .:;.   ',oK.            ,    .,'dOo.          :K0x;         lX,  .',;.     
        ,;;;;;O;            c:        .. ..          o:;,         .k:,'         
             .O            lK;                        ::d;:,.      :l,.         
             co          ,d; ,             ',,,,.      :0. .,,,,,''':d,         
            :l         :o;    .          :xo:. .,:;.    ,c::::.                 
          .:d.   .,:cccK.                xXl.;;,.  ',..      .d                 
         cx;,,codW:.   x;         ..      .  xk,cc    .       k                 
         ;l;';' .W.    o:            .'  .       ..         .o;                 
                .W.    .xc             :;                .:cc.                  
                .N.     ,O             .d.             .''ll.                   
                 0;      clk.            l:                .O.                  
                 cd        ,lk.           .lcc;;;:::cldxk0xl.                   
                  x.        :x                ....       o;                     
                  .x.       .lcol,               ..',,,,,d.                     
                   .o;         ;lKc  .       'dXKkkNK:'..                       
                     ,c.        lX':OX'.           ol                           
                       ,,       lXl0MMWo         .  x'                          
                         ..      .:ONk0K'       l:;cl                           
                                   .kK.xWXl  cONWNl                             
                                  :d;. ;WMX.OMMMMMO'                            
                                   .   x:NMNXMMMMMMMWKc.                        
                                       . .dNNKWXd0WMKl                          
                                           .o;'cc..,,.                          

                                                      .',,'.                    
                                  ..             .ckXMMMMMMMNk.                 
                               ,OWMMWO.        .kMMMMMMMMMMMMMO                 
                              lMMMMMMMK       oWMMMMMMMMMMMMMMd                 
                    ,c:.     .WMMMMMMMN      kMMMMMMMMMMMMMMMK.                 
                  dWMMMW;    ,MMMMMMMMO     lMMMMMMMMMMMMMMMK.                  
                 lMMMMMMN.   .NMMMMMMW,     XMMMMMMMMMMMMMWo                    
                 oMMMMMMM;    lMMMMMMc     .MMMMMMMMMMMMMO.                     
          .,.    .XMMMMMM,     lWMMK,       KMMMMMMMMMWO,                       
        ,XMMM0.   .KMMMMK        '.         .XMMMMMW0l.                         
        NMMMMMK     cKW0.                     ,clc,                             
        OMMMMMMc                      ....                                      
        .0MMMMMx            .,cdk0XNWMMMMMMWNKko;.                              
          :0MMMc       .:d0NMMMMMMMMMMMMMMMMMMMMMM0:                            
            .'.     'oXMMMMMMMMMMMMMMMMMMMMMMMMMMMMMk                           
                  cKMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM.                          
                lNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN                           
              'XMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN,                           
             'WMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWk.                            
             0MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWk.                              
            'MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKl.                                
            ;MMMMMMMMMMMMMMMMMMMMMMMMMMMMWOl.                                   
            'MMMMMMMMMMMMMMMMMMMMMMMMMWk;                                       
             KMMMMMMMMMMMMMMMMMMMMMNx;                                          
             ;MMMMMMMMMMMMMMMMMMMO,                                             
              dMMMMMMMMMMMMMMMMK.          'lx0XNWNXOc                          
               oMMMMMMMMMMMMMMM.         ,NMMMMMMMMMMMl                         
                ;NMMMMMMMMMMMMM,         oMMMMMMMMMMMW.                         
                 .xMMMMMMMMMMMMWo.      .KMMMMMMMMMMW:                          
                   .OMMMMMMMMMMMMM0o:,;dNMMMMMMMMMMN,                           
                     'OMMMMMMMMMMMMMMMMMMMMMMMMMMMk.                            
                       .l0MMMMMMMMMMMMMMMMMMMMMWk.                              
                          .:xXMMMMMMMMMMMMMMWOc.                                
                              .,coxkO00Oxo:'                                    
                                                                                
                                                                                
                                                                                
       ;oxkxdc.  co'     oo'   .cdkkdc.    ;ooc    .ooo   ;ooooooo'  .:.,'.:    
     oWMXxoox0.  0MMd   .MMc  dWM0od0MMd   KMMM;   KMMM,  dMMKkkkk,   : :',;    
    lMMk         0MMMX' .MMc oMMl    oMMl .WMWMX  oMMMMl  dMM:                  
    OMM'  'dddd  0M0xMWc.MMc 0MM.    .MMO ,MMdKMl.WMdMMk  dMMNXXX,              
    xMM:  .odWM. 0Mk ,XMXMMc OMM'    ,MMx lMM,,MNKMO KMX  dMMd,,,.              
    .WMNc.  'WM. 0Mk  .OMMMc 'WMK'  ,KMN. OMW. xMMN. xMM. dMMo.....             
     .dXMMWMMWO  0Mk    :NMc  .xNMMMMNk.  NMK  .NMc  cMM: dMMMMMMMd             
         ....                    ....            .                              
jp2a.txt

Logotipo de Arch Linux convertido a arte de caracteres ASCII con jp2a Logotipo de Linux convertido a arte de caracteres ASCII con jp2a Logotipo de GNOME convertido a arte de caracteres ASCII con jp2a

Logotipo de GNU convertido a arte de caracteres ASCII con jp2a

Varios logotipos convertidos a arte de caracteres ASCII con jp2a

Páginas web de conversión a arte de caracteres ASCII

No es necesario instalar aplicaciones para generar tanto un texto en arte ASCII como convertir una imagen a arte ASCII, hay algunas páginas que ofrecen estas funcionalidades simplemente introduciendo el texto a convertir a arte ASCII como proporcionando la imagen a convertir a arte ASCII.

El resultado es un conjunto de caracteres que forman el arte ASCII. El propio buscador DuckDuckGo es capaz de generar el arte ASCII de figlet con la fuente standard, la página Online Ascii Tools permite convertir un texto a arte ASCII seleccionando la fuente o incluyendo una colección de arte ASCII y la página ASCII Generator permite convertir una imagen a arte ASCII.

Referencia:


Comparte el artículo: