Library to animate between two ascii images -
JavaScript
Latest commit 54683d7 Nov 22, 2016 @tholman committed on GitHub Merge pull request #1 from brunob/patch-1
typo :)
Permalink
Failed to load latest commit information.
asciiMorph.js size management Nov 16, 2016
asciiMorph.min.js Create asciiMorph.min.js Nov 16, 2016
license.md Create license.md Nov 16, 2016
readme.md typo :) Nov 20, 2016

readme.md

AsciiMorph

AsciiMorph is a small stand alone javascript library for rendering ascii art and creations into elements, allowing for them to be changed out with a morphing transition.

Demo

Here's a gif of it in action. You can also play with the demo live here.

Ascii Morph in action

Usage

You'll need an dom element for the ascii's to be rendered within.

<!-- Pre elements are perfect for this. -->
<pre class="ascii-element">
</pre>

Next up, you will want to initialize the library. The second parameter is the width and height properties you want in your rendering square. The ascii will be rendered centered within them, and fill the rest with white space. Naturally this looks best with monospace fonts.

// Initialize AsciiMorph
var element = document.querySelector('pre');
AsciiMorph(element, {x: 50,y: 25});

Then you can get to the fun, rendering elements, and morphing between them.

// First, define some ascii art.
var bird = [
 "                             /",
 "                            /",
 "                           /;",
 "                          //",
 "                         ;/",
 "                       ,//",
 "                   _,-' ;_,,",
 "                _,'-_  ;|,'",
 "            _,-'_,..--. |",
 "    ___   .'-'_)'  ) _)\\|      ___",
 "  ,'\"\"\"`'' _  )   ) _)  ''--'''_,-'",
 "-={-o-  /|    )  _)  ) ; '_,--''",
 "  \\ -' ,`.  ) .)  _)_,''|",
 "   `.\"(   `------''     /",
 "     `.\\             _,'",
 "       `-.____....-\\\\",
 "                 || \\\\",
 "                 // ||",
 "                //  ||",
 "            _-.//_ _||_,",
 "              ,'  ,-'/"
 ]

var mona = [
 "         ____",
 "        o8%8888,",
 "      o88%8888888.",
 "     8'-    -:8888b",
 "    8'         8888",
 "   d8.-=. ,==-.:888b",
 "   >8 `~` :`~' d8888",
 "   88         ,88888",
 "   88b. `-~  ':88888",
 "   888b ~==~ .:88888",
 "   88888o--:':::8888",
 "   `88888| :::' 8888b",
 "   8888^^'       8888b",
 "  d888           ,%888b.",
 " d88%            %%%8--'-.",
 "/88:.__ ,       _%-' ---  -",
 "    '''::===..-'   =  --.  `",
 ]

// Then, you can render (will render instantly)
AsciiMorph.render(bird);

// Then morph, to a new creation
AsciiMorph.morph(mona);

License

Copyright (c) 2016 Tim Holman - http://tholman.com

The MIT License