Image to ASCII art
The art appears here
Made in your browser · nothing is uploaded
Converts an image into characters, choosing a denser character for each darker area. High-contrast pictures with a clear subject work far better than busy ones.
How to use the image to ascii art
Each output character stands for one sampled pixel, and the character is chosen by brightness from a ramp running dark to light — @ for near-black through to a space for white. Brightness uses the Rec. 601 luma weights rather than an average of the three channels, because the eye is roughly six times more sensitive to green than to blue; a flat average makes blue regions come out far lighter than they look.
The correction that matters most is aspect ratio. A character cell is about twice as tall as it is wide, so mapping one pixel per character makes everything twice as tall as it should be. Sampling half as many rows as columns fixes it, and it is the single most common thing missing from hand-written converters — the output looks stretched and nobody can quite say why.
Inverting matters more than people expect. The default ramp assumes dark characters on a light background, as in a printed page. Paste that into a terminal with a dark theme and the image comes out as a photographic negative. The invert option flips the ramp for exactly that case.
On what works: high contrast with a clear subject. A portrait against a plain background converts beautifully at 80 characters wide. A busy landscape becomes noise at any width, because the technique has perhaps ten levels of brightness to work with, against the 256 in the original.
Questions
It should not here — character cells are twice as tall as they are wide and the row count is halved to compensate. That correction is what most converters miss.
The default ramp assumes dark text on light. Turn on invert for a dark terminal.
High contrast with a clear subject. A portrait on a plain background works; a busy landscape becomes noise.
It genuinely is, to the eye. The brightness calculation uses the Rec. 601 weights rather than a flat average.
No. Everything happens in your browser — you can load the page, go offline, and it still works.