Polyatic Image to ASCII Art
All tools

Image to ASCII art

Turn a picture into text art: letters, block shades or braille dots, plain or in colour. Copy it ready to paste, or save it as TXT, HTML or PNG. The picture never leaves this device.

Choose a picture or drop or paste (Ctrl/⌘+V) · JPG, PNG, WebP, GIF · opened on this device, never uploaded

Open a picture to see it as text art.

Characters

100 characters
0
0

Download

TXT is the plain characters (UTF-8). HTML keeps every character's colour. PNG is the art drawn in a monospaced font, in colour if Colour is on.

Privacy: nothing is uploaded. Your picture is turned into text inside this browser. The page sends an anonymous page-view count and two fixed event names (open, copy), never the picture, its file name or the art.

How to turn a picture into ASCII art

  1. Open the picture. Tap Choose a picture, drop a file on the box, or copy an image and press Ctrl+V (⌘V on a Mac).
  2. Pick the characters. Standard uses 10 characters from @ to a space; Detailed uses 70 for smoother shading; Blocks uses ░▒▓█; Braille dots packs 2 × 4 dots into each character; Custom uses whatever you type, darkest first.
  3. Set the width. 20 to 300 characters per line. The number of lines follows from the picture's shape.
  4. Match the background. Leave Invert off for dark characters on a light page; turn it on for light characters on a dark chat or terminal. Brightness and Contrast pull a dull photo apart.
  5. Copy or save. Copy the text (in a code block for chats), or download TXT, coloured HTML or a PNG picture of the art.

What it cannot do

  • The art keeps its shape only in a monospaced font. In a normal font an i is narrower than an @ and every line drifts. Paste it inside a code block (``` in Discord, Slack and Markdown) or into a plain-text editor.
  • Braille looks different in different fonts. Some fonts draw the dots big, some small, some with wider cells, and a few phones have no braille glyphs at all and show boxes. The same text can look crisp on one screen and gappy on another.
  • Fine detail is lost below about 80 characters wide. Each character stands for a whole block of pixels, so eyes, text in the photo and thin lines vanish. Crop close to the subject, or use braille, which has twice the columns and four times the rows of dots.
  • Colour does not survive as text. Copy gives the characters only; colour needs the HTML or PNG download.
  • Chat apps can still change it. Outside a code block many apps collapse runs of spaces and trim line ends, and a message over the app's limit is refused or cut.
  • Nothing is saved. Close the tab and the art is gone, so copy or download it first.

How the picture becomes characters

The picture is cut into a grid, one cell per character, and each cell's pixels are averaged. The brightness of that average (0.299 R + 0.587 G + 0.114 B, from 0 for black to 255 for white) picks a character from the ramp: the darkest cell gets the densest character and the lightest gets a space. With the 10-character standard ramp @%#*+=-:. and a space, a cell of brightness 128 lands on step round(128 ÷ 255 × 9) = 5, the =.

A character cell is about twice as tall as it is wide, so with aspect correction the page uses half as many rows as columns would suggest: a 1200 × 800 photo at 100 characters wide becomes round(800 ÷ 1200 × 100 × 0.5) = 33 lines. Braille works on the dots instead: 100 characters are 200 dots across, the dots are roughly square, so the same photo is 133 dot rows, or 34 lines of 4 dots.

Questions

Is this a free image to ASCII art generator?

Yes. Open a picture and the text art appears at once and changes live as you move the width, brightness and contrast sliders. There is no sign-up, no watermark and no limit on how many pictures you convert, because the conversion runs in your browser.

Can I make ASCII art with color?

Yes. Tick Colour and every character takes the average colour of the part of the picture it stands for. Colour cannot travel as plain text, so Copy gives the characters only; Download HTML saves a web page with each colour run in its own span, and Download PNG saves a picture of the coloured art.

How do I make image to ASCII art with dots (braille)?

Choose Braille dots. Each character is a Unicode braille pattern with 2 columns by 4 rows of dots, so each character carries 8 dots where a letter carries one shade, and a 100-character line holds 200 dots across. A dot is raised where the picture is darker than the Threshold; Dithering spreads the in-between greys as a scatter of dots (Floyd-Steinberg), which keeps faces and gradients readable. Blank cells use U+2800, the empty braille pattern, so chat apps do not squash them the way they squash runs of spaces.

How do I paste ASCII art as text into Discord or a chat?

Tick Copy inside a ``` code block and press Copy text. The fences make Discord and Slack show the art in a monospaced font, which is the only way it keeps its shape. The page shows the exact number of characters on the clipboard, line breaks and fences included, next to each chat's own stated limit: 2,000 for a Discord message (4,000 with Nitro), 4,096 for Telegram, 40,000 for Slack and 280 weighted characters on X. If it is over, lower the width.

What width should I pick?

For a chat message, 30 to 60 characters: a 40-wide letter picture of a square photo is 20 lines and 819 characters, which fits a Discord message. For a picture that reads well as a file or a web page, 120 to 200. Below about 80 characters wide fine detail such as eyes and lettering is lost, and above about 150 the art is wider than most screens unless you zoom out.