Image to ASCII

Turn a local image into proportional text art, then copy or download the exact text.

About this tool

Choose a local image, or drop or paste it into the image selector. Supported formats depend on the browser. Files are limited to 10 MiB; after decoding, images must have positive dimensions, no edge longer than 16384 pixels, and at most 24 million pixels. Loading a new file clears the previous preview and text. The most recently selected file wins.

Choose 24–180 columns, a character ramp and optional inversion, then Render. The text uses cells twice as high as wide. Rows = round(image height / image width × columns × 0.5), with at least one row. Outputs over 1000 rows are rejected rather than cropped. The preview font uses the same fixed 2:1 cell geometry; scrolling changes only what is visible, not the exported content.

The browser samples the image into the requested grid. Each RGBA pixel is composited on opaque white using source-over alpha compositing. Its brightness score is 0.2126 R + 0.7152 G + 0.0722 B after compositing. This weighted encoded-byte heuristic is not a gamma-corrected physical luminance measurement. Normally black selects the darkest character and white or full transparency selects a space. Inversion reverses the ramp.

Dense, simple and two-tone ramps use ASCII characters; the blocks ramp uses Unicode block characters. Copy and UTF-8 TXT download contain exactly the preview text, including trailing spaces and one line feed after every row, including the last. Plain text does not store font, colors or a background; another editor may display it differently. The on-page preview uses dark ink on white in every theme.

Changing any option preserves the loaded image but clears old text until Render is pressed again. Images and generated text are not saved between tool visits. If clipboard access is denied or unavailable, use Download TXT.