WMW

ASCII Art Generator

Free

Turn typed text or an uploaded image into ASCII art. Choose a font style or character ramp, preserve color, and export as plain text or PNG.

Everything runs in your browser. Text and images are never uploaded to a server.


            
        

Recent Activity

Visible to everyone. Last 20 uses across all visitors, newest first.

No activity yet. Be the first.

Comments (0)

Found this tool useful? Leave a comment, share a tip, or tell us how we can make it better.

Guest comments are reviewed before publishing. Sign in to post instantly.

No comments yet. Be the first to share your thoughts!

What this tool does

ASCII Art Generator turns typed text or an uploaded image into text-based art made entirely of ordinary characters. Type a word for a big stylized banner (handy for README files, terminal startup messages, or forum signatures), or upload a photo to get a classic character-based rendering of it, with a choice of font styles, character sets, and optional color.

How It Works

Text and images are converted by the same engine: the source (rendered text or a photo) is read pixel by pixel from an HTML canvas, then split into a grid of cells -- the number of columns is whatever you set with the Width slider, and the number of rows is calculated as rows = round((sourceHeight / sourceWidth) * columns * 0.55), where 0.55 corrects for monospace characters being taller than they are wide, so the final art keeps the right proportions.

Every pixel inside a cell is converted to a brightness value using luminance = 0.299 × red + 0.587 × green + 0.114 × blue (the standard formula for how bright a color appears to the human eye), then averaged across the whole cell. That average brightness, from 0 (black) to 255 (white), picks one character from the selected ramp: index = round((brightness ÷ 255) × (ramp length − 1)), so black cells get the densest character and white cells get the lightest one (or the reverse, with Invert turned on).

Problems it solves

Frequently asked questions

›How does converting an image or text into ASCII art actually work?

The tool draws your text (using a real browser font) or your image onto a hidden canvas, reads the color of every pixel, then divides that canvas into a grid of small blocks, one per output character. Each block's average brightness picks a character from a ramp ordered from "densest" to "lightest" -- dark blocks get dense characters like @ or #, light blocks get sparse ones like . or a blank space.

›Why do the "Block", "Slant", "3D Shadow", and other styles only apply to Text mode?

Those styles change how your typed text is drawn before it gets sampled into characters -- a heavier font weight for Block, italics for Slant, a duplicated offset layer for 3D Shadow, an unfilled outline for Outline. An uploaded image has no "font" to apply a style to, so Image mode always samples the photo exactly as it is.

›What does "Preserve color" do, and will it still work if I paste it somewhere?

With "Preserve color" on, each character on screen is colored to match the average color of its source block, so the art keeps looking like the original image or colorful text right on the page. Plain-text exports (Copy, .txt download) are always a single color, since plain text has no per-character color -- only the on-page preview and the PNG download keep the color.

›What is the Character Ramp, and can I use my own?

The ramp is the ordered set of characters used from darkest/densest to lightest/sparsest, for example "@%#*+=-:. " for a classic look or block characters like "█▓▒░" for a cleaner, more solid-looking result. Pick Custom and type your own characters in any order from dense to light to design your own look.

›Is my image uploaded anywhere?

No. Both text and image conversion happen entirely in your browser using the canvas API. Nothing is sent to a server, and nothing is stored unless you choose to download or copy the result yourself.

Related Tools