How to use the ASCII art generator
- Type text on the "Text to art" tab, or upload an image on the "Image to art" tab.
- Choose the characters per line and the character set and the result changes at once. For a picture on a dark background, try Invert.
- Press "Copy" to paste it, or "Save as .txt" for a file. When pasting, use a monospaced font or a code block.
The history of ASCII and how classic character graphics work
ASCII is a character code made so computers could exchange Latin letters, digits and symbols as numbers, and it became a standard in the 1960s. It defines 128 characters with 7 bits, of which about 95 are visible on screen. Early computers and printers could not draw pictures and could only print characters, so people used the shapes and density of characters to express images. That was the start of ASCII art.
The principle is that each character covers a different amount of area with ink. A period is almost empty, while an at sign or a hash mark fills more and looks darker. Divide a picture into small cells, find the average brightness of each cell, and choose a character whose density matches the brightness, and you get a light-and-dark picture made of characters. A character is about twice as tall as it is wide, so the cells must also be twice as tall to keep the proportions. This tool uses that method.
Uses and limits
Character art is used for GitHub README title decoration, terminal program start screens, text stickers in Discord and chat rooms, and logos in code comments. It is expressed in text alone, so it is small and opens anywhere. Changing the character set changes the feel: block characters look sharp and sets with dots look soft.
The biggest limit is that the shape can break when pasted where the font is different. A larger number of characters per line is finer, but a line gets long and may not fit on screen. Choose the width to suit the use. Converting and publishing a copyrighted image can raise copyright issues with the original.
Tips for good results
- Convert text with a bold font and a width of 80 characters or more.
- Choose images with clear contrast.
- Turn on Invert for dark backgrounds.
- Check that the place you paste into uses a monospaced font.
- Shorten very long lines to fit the screen width.
FAQ
The shape breaks when I paste it.
Character art only lines up in a monospaced font where every character has the same width. The default fonts of messengers and forums have varying widths, so it looks broken. Pasting into a Markdown code block (three backticks), a Discord code block or a GitHub README code block keeps the shape.
Does it convert Hangul too?
Yes. The text is drawn on screen first and then its brightness is turned into characters, so Hangul, Latin letters, digits and symbols all work. Thin-stroke fonts are hard to read, so use a bold font and a generous number of characters per line (80 or more) for a clear shape.
Which images convert well?
Images with a simple background and clear contrast convert well, such as logos, silhouettes and portraits with distinct light and dark. For a bright picture on a dark background, turn on "Invert light and dark" for a more natural result.
Notes & limitations
The look of the result depends on the font of the place where it is viewed. Text and images are processed only in the browser and not sent to a server. Check copyright when converting other people's images.