Skip to content
A JavaScript implementation of a image to Ascii code
JavaScript HTML
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Create FUNDING.yml Aug 28, 2019
img add displayColor() method that allows to display ASCII art in color Oct 6, 2018
src fix reject promise Oct 10, 2018
CODE_OF_CONDUCT.md Create Code of conduct Oct 5, 2018
LICENSE
README.md Update README.md Dec 27, 2019
index.html fix possible redundancy in displaying the same image with and without… Oct 6, 2018

README.md

imgToAscii

A JavaScript implementation of a image to ascii converter.

Live example

How to use

Include the imgToAscii.js file

<script src="src/imgToAscii.js"></script>

or

<script src="https://raw.githubusercontent.com/victorqribeiro/imgToAscii/v1.3/src/imgToAscii.js"></script>

then just create a new imgToAscii object with the image address and optionaly the alphabet: (0 - simpler shades, 1 - more complex shades) - default is 0

let ele = new imgToAscii('elefante.png');
ele.display();

You can also resize your image passing a second parameter between 0 and 1 as percentage. e.g.: 0.5 = 50% - Will reduce the size of your image in 50% both vertical and horizontal (width, height).

let eu = new imgToAscii('eu.png',0.5);
eu.display();

To display the ASCII image with color just call the method displayColor(). You can set the background color of your image passing a color parameter to the method. e.g.: gray, white, black, #fff, rgb(10,10,10). Default is transparent.

eu.displayColor('gray');

Note that on the code above the same 'eu' image was used. Once you load an image, you can display it with or without color, without the need to reload the image data.

Important

The ascii art depends on a monospace font to work properly. You should consider that 1 pixel in your image is going to be translated to 1 char in Ascii. e.g.: if a image is 100 pixels wide, it's going to take 100 chars of space on your page, unless you do something about it.

The imgToAscii should work with remote images:

let img = new imgToAscii('http://site.com/image.png');

but it might not because of cross-origin settings. Keep that in mind.


A similar code is running on my photoEditor to generate a image of the ascii code (what?!)

result

result

result

Open Source Helpers

Donations

You can’t perform that action at this time.