Primeros pasos

Si quieres crear arte ASCII, lo primero que debes saber es que no necesitas un programa especial ni habilidades especiales. Solo necesitas un lugar donde escribir texto (tu programa de correo electrónico, el bloc de notas, WordPad, etc.) y una idea de lo que quieres dibujar. No hay secretos ni reglas, salvo las siguientes:

* Usa una fuente no proporcional o de ancho fijo. Haz clic AQUÍ para acceder a una página de este sitio que te explicará cuáles son o pídeme la versión de texto por correo electrónico.
* ¡No uses tabulaciones! Siempre, pero siempre, usa la barra espaciadora (o las teclas del cursor/ratón si el programa en el que escribes lo admite) para los espacios vacíos. Esto se debe a que cada computadora y programa interpreta el tamaño de un espacio de tabulación de forma diferente, por lo que, aunque lo que ves en tu pantalla se ve bien, en la de otra persona tu imagen puede verse dividida.
* Usa solo los caracteres del teclado estándar americano. Esto se refiere a todas las letras, números y signos de puntuación que se ven impresos en las teclas del teclado. Puedes usar la tecla Mayús, pero no la tecla Alt para crear caracteres. La razón es similar a la de no usar tabulaciones: cada computadora interpreta los caracteres alternativos de forma distinta. La idea detrás de ASCII es que todas las computadoras pueden leerlo porque está compuesto de caracteres que todas reconocen.
* No dejes espacios vacíos al final de cada línea. Asegúrate de que cada línea que escribas termine en el último carácter, y no unos pocos espacios después. Esto puede causar problemas en otros sistemas, como el ajuste de línea, etc.

Tu primer ASCII

La mejor manera de empezar es tomar la foto de otra persona y ver si puedes copiarla. Así te familiarizarás con cómo usar diferentes caracteres. Empezaremos por lo fácil. Intenta copiar estas formas, que solo usan los caracteres:  / \  |  _
___               ___
|   |      /\     /   \
|___|     /__\    \___/

Fácil, ¿verdad? Ahora intenta crear las mismas formas de nuevo con estos caracteres:

-  "  .  ,  `  :  >  <

Esto es lo que se fui logrando:

.---.       .        .--.
:   :     .' `.     <    >
"---"     "---"      `--'

Es un poco más complicado y no queda tan bien, pero algunos de estos personajes - y saber cómo usarlos - pueden ser muy útiles a veces, como veremos más adelante. Intenta copiarlos, solo para practicar. Cámbialos si quieres:

_   _    __    _   _                                   .^._    __
| |_| |_.'  `._| |_| |    /\  /\  /\  /\       /\      /   \|   \ \
|  _   _      _   _  |   /  \/  \/  \/  \    .'  `.   /_____V   / /
|_| |_| `.__.' |_| |_|  / /\  /\  /\  /\ \  <      >  |[]_[]|   \ \
                       \/  \/  \/  \/  \/   `.  .'   | |+| |   / /
                                              \/     `"""""'   \_\

Curvas

Es útil saber dónde se ubican los caracteres en cada línea. ¿Están arriba, en el centro o al final? Algunos caracteres ASCII varían en su posición según la computadora, pero generalmente todos ocupan el mismo lugar. Inténtalo tú mismo en tu teclado. Aquí tienes algunos ejemplos.

Arriba de la línea:                  " ` '
Parte superior o medio de la línea:  ^ * ~ =
Medio de la línea:                   - +
Inferior de la línea:                _ . ,

Puedes usar todos estos caracteres en una línea para crear un patrón como estos:

_.,-=~+"^'`*`'^"+~=-,._.,-=~+"^'`*`'^"+~=-,._.,-=~+"^'`*`'^"+~=-,._


"^`'*-=~+,._.,+~=-*'`^"^`'*-=~+,._.,+~=-*'`^"^`'*-=~+,._.,+~=-*'`^"

Ahora intenta crear una firma sencilla con un borde decorativo, usando todos los personajes que hemos visto hasta ahora. Esto es lo que se me ocurrió:

                       _________________________
 ..,,++~~--==**''``^^""  Hayley Jane wakenshaw  ""^^``''**==--~~++,,..
/|\                     [email protected]                    /|\
< : > Flump's Fantastic Ascii Collection  http://www.xs4all.nl/~klr < : >
\|/ "Daddy.. why doesn't the magnet pick up your floppy disks?..."  \|/
 ""^^''``**--==~~++,,.._________________________..,,++~~==--**``''^^""

Uso de otros caracteres

Los demás caracteres ASCII se dividen en tres categorías: ocupan la altura completa de la línea o la mitad de la altura. Las mayúsculas y los números siempre ocupan la altura completa. Compárelos con otros: ¿cuáles ocupan la mitad de la altura y cuáles la altura completa? Algunos ejemplos:

Altura completa: A 7 % @ ! # ) ; & $ ] } | / > l t f k h d ?
Media altura: a o v z

Y luego está el tercer tipo. Los caracteres que parecen de media altura, pero se ubican un poco más abajo en la línea, como en la escritura a mano. Estos son: j g y p q

Y juntos pueden formar una ligera curva, al igual que los demás:

pqyjgacoevA8!@)lf$%;$fl(@!8AveocagjypqacoevA8!@)lf$%;$fl(@!8Aveoc


Líneas y diagonales

Existen tres líneas básicas en cualquier imagen: rectas (horizontales o verticales), diagonales y la tercera es la curva, que incluye los círculos. Primero, veremos las líneas rectas y diagonales. Las líneas horizontales y verticales son simples en ASCII; aquí hay algunos ejemplos:

Horizontal: 8888888888888888888888888888888888888888888888888888888888
           """"""""""""""""""""""""""""""""""""""""""""""""""""""""""
           ----------------------------------------------------------
           __________________________________________________________
           ..........................................................


Vertical:   |    8    :    !    1    I
           |    8    :    !    1    I
           |    8    :    !    1    I
           |    8    :    !    1    I
           |    8    :    !    1    I
           |    8    :    !    1    I

Las diagonales son un poco más complicadas. Puedes crear diagonales sencillas con las teclas / y \. Las diagonales con otros gradientes requieren una técnica similar a la que se usa para crear curvas ligeras. Experimenta para ver cómo puedes crear diferentes ángulos. Aquí tienes algunos ejemplos para empezar:

      /         .'               _,-'                            __
     /        .'             _,-'                        __..--''
    /       .'           _,-'                      __..''
   /      .'         _,-'                  __..--''
  /     .'       _,-'              __..--''
 /    .'     _,-'          __..--''                   ____....----"""
/   .'   _,-'      __..--''           ____....----""""
/  .'  ,-'  __..--''   ____....----""""

Círculos

Ya hemos visto los caracteres básicos, la altura de los caracteres, las curvas ligeras, las líneas y las pendientes. Lo último que hay que ver es aquello con lo que muchos programadores ASCII tienen problemas: los círculos. Sin embargo, ya estás a medio camino, ya que los círculos ASCII son básicamente una mezcla de líneas verticales y horizontales, pendientes o diagonales y curvas. Con un poco de práctica, te familiarizarás con la creación de círculos de diferentes tamaños. Tengo un conjunto básico de círculos en un archivo que consulto cuando necesito una forma circular o redondeada en una imagen ASCII, así que ahora puedo crearlos fácilmente en todo tipo de tamaños. Empieza a crear círculos pequeños: ¿de cuántas maneras se te ocurren hacer un círculo en menos de 5 líneas? Cuanto más grande sea el círculo, más redondeado puede ser, pero intenta crear círculos de diferentes tamaños a ver qué te parece. Estos son los míos:

                                              __
                         _   /""\            /  \
1 line:  O ()   2 lines: (_)  \__/   3 lines: \__/

                                                    ____
          ___               .-''-.                .'    `.
4 lines:  /   \   5 lines:  /      \   6 lines:   /        \
        |     |           |        |             |        |
         \___/             \      /              \        /
                            `-..-'                `.____.'

            _.-""""-._
9 lines:   .'          `.
         /              \
        |                |
        |                |
        |                |
         \              /
          `._        _.'
             `-....-'

Estos son los caracteres básicos y lo que puedes hacer con ellos. Experimenta con ellos, descubre qué patrones y garabatos ASCII puedes crear. Intenta copiar una de mis imágenes u otra imagen ASCII de algún excelente sitio web. ¡Luego cámbiala! Observa cómo puedes usar los caracteres para que la imagen se vea diferente. ¿Puedes cambiar la expresión de una cara? ¿Puedes hacer que una persona ASCII sea más gorda, más delgada, más alta o más baja? ¿Le das bigote al dinosaurio Barney o, mucho mejor, varias heridas? :-) Así es como aprendí. Muchos de mis primeros intentos fueron pésimos. Así que miré cómo alguien más había hecho el mismo tipo de imagen y aprendí de ello. Y todavía lo hago; probablemente por eso la gente suele decir que mi estilo se parece mucho al de Joan Stark.

Para empezar, recorta y pega esta cabeza donde quieras dibujar tu ASCII y ponle una cara. Añade un sombrero o un cuerpo. O haz el pelo más corto o más largo. ¡Que sea un payaso o un diablo!

          ,-.,~~.
        ,'///||\\`.
       ///(((||)))\\.
      (((         )))
      _)))        |(_
     ._//\       /\\_.
     `-'_/`-._.-'\-`-'
       ' \/=._.=\/ hjw

Avanzando

Ya se acabó lo aburrido de la técnica. :-) Lo que viene a continuación es una demostración paso a paso de cómo convierto una imagen en ASCII.

Al empezar, siempre es buena idea intentar dibujar algo sencillo. Gromit, el perro, está hecho de formas muy simples: solo óvalos y círculos, así que lo usaré como ejemplo.

Para empezar un dibujo, busco la característica más simple o prominente de lo que intento dibujar. En el caso de Gromit, creo que es su nariz. :-) Probaré con el círculo de dos líneas a ver qué tal me va. Después de dibujar su nariz, veré si puedo dibujar la forma de su cabeza alrededor de ella.

              ___
             /   \
            |     |
           /   _   \
           |  (_)  |
            \     /
             `---'

Mmm... no me gusta eso. La parte superior de su cabeza no es lo suficientemente alta, pero si la hago más larga, se ve demasiado estrecha. Si la hago más ancha, la nariz se ve demasiado pequeña...

              ____
             /    \
            |      |
            |      |
           /   _    \
           |  (_)   |
            \      /
             `----'

...y para poner la nariz en el centro, tendré que hacerla otro caracter más ancha.......

             _____
            /     \
           |       |
           |       |
          /    _    \
          |   (_)   |
           \       /
            `-----'

..y aunque parece un perro simpático, no es Gromit, ¿verdad? Así que le haré la nariz un poco más grande; tres líneas esta vez, y probaré con la forma de la cara de nuevo.

                ____
              ."    ".
             /        \
             |        |
             |        |
             /   __   \
            |   /  \   |
            |   \__/   |
             \        /
              `.____.'

Sí, eso está mejor. :-) Después suelo intentar encajar los ojos.

                ____
              ."    ".
             / __  __ \
             |/()\/()\|
             |\__/\__/|
             /   __   \
            |   /  \   |
            |   \__/   |
             \        /
              `.____.'

No. No me gustan. Normalmente me gusta hacer que los ojos sean círculos completos, o usar solo un par de caracteres como "9 9" o "e e". Pero serían demasiado pequeños. Y estos ojos son demasiado grandes y no se ven lo suficientemente redondos. Intentaré con dos líneas.

                ____
              ."    ".
             /        \
             |  _  _  |
             | (O)(O) |
             /   __   \
            |   /  \   |
            |   \__/   |
             \        /
              `.____.'

Mucho mejor. Ahora pongámosle las orejas.

      .-""-.            .-""-.
     /    -.`.  ____  .' _    \
     \   .' \ `"    "' ,' \   /
      `-'    /        \    `-'
             |  _  _  |
             | (O)(O) |
             /   __   \
            |   /  \   |
            |   \__/   |
             \        /
              `.____.'       hjw

Sin embargo, quedan huecos que se ven desordenados. Aquí es donde no conseguí que los caracteres encajaran. A menudo se puede solucionar usando una letra. Esta es prácticamente la única vez que uso letras y números, aparte de pequeños detalles como los ojos. Experimento con mis caracteres de conexión favoritos, como: "j", "v", "V", "X", "x", "7", "i", "y", "Y". Creo que usaré la "Y" porque tiene los ángulos correctos en los lugares adecuados para conectar las orejas a la cabeza. :-)

      .-""-.            .-""-.
     /    -.`.  ____  .' _    \
     \   .' \ `"    "' ,' \   /
      `-'    Y        Y    `-'
             |  _  _  |
             | (O)(O) |
             /   __   \
            |   /  \   |
            |   \__/   |
             \        /
              `.____.'    hjw

El último paso es añadir los pequeños detalles y arreglar cualquier parte desordenada o confusa. No me gusta esa oreja izquierda ahora mismo, así que la cambiaré. Pero en la versión final que publique en la página web, puede que decida volver a cambiarla. ;-) Revisaré por última vez que se parezca al dibujo en el que he estado trabajando y le preguntaré a Robbie, mi prometido, si puede decirme qué es. Si la prueba de Robbie sale bien, entonces guardaré el dibujo y empezaré a buscar algo más que dibujar. :-)

      .-""-.            .-""-.
     /    ,.`.  ____  .' _    \
     \   /  \ `"    "' ,' \   /
      `-'    Y        Y    `-'
             |  _  _  |
             | (O)(O) |
             /   __   \
            |   /# \   |
            |   \__/   |
             \        /
              `.____.'
              --"  "--     hjw


Estos son solo los conceptos básicos. Existen otras técnicas como el sombreado, la creación de ASCII de estilo sólido y el suavizado (para que el ASCII de estilo sólido se vea más suave). Sin embargo, no las uso mucho, así que no estoy capacitado para explicarlas. Esta información debería ser suficiente para empezar. :-)

Si todo lo demás falla, siempre puedes consultar otros tutoriales y consejos sobre arte ASCII disponibles.