Image to ASCII Art
Represent a photograph or illustration using a grid of fixed-width characters. This tool samples the image into a smaller grid and chooses a character for each cell according to its brightness. Dense characters cover dark areas while lighter characters and spaces reveal highlights. Adjust character width relative to line height to preserve the picture’s proportions.
Key features
- 20–240 columns with a grid adjusted for character width and line height
- Standard, detailed and two-tone presets plus custom palettes with preserved spaces
- 0–200% brightness adjustment and reversed brightness-to-character mapping
- Transparent pixels composited against your chosen color before brightness calculation
- Scrollable monospace preview, full-text copy and TXT download
How to use
- Choose a static PNG, JPEG or WebP image, or load the example.
- Set the number of columns and character width-to-line-height ratio. More columns produce more text.
- Arrange palette characters from dark to light, then adjust brightness, inversion and the transparency background color.
- Create the ASCII art and inspect its grid dimensions and preview. Generate again after changing settings.
- Copy the result or download the TXT. Use a monospace font and preserve spaces and line breaks where you paste it.
Use cases
- Turn a simple photo or icon into a character picture to share
- Create decorative ASCII art for a README code block
- Compare image brightness and character density in a lesson
- Experiment with monochrome art for terminals and text editors
Frequently asked questions
Does this extract words written in a photo?
It converts pixel brightness into a character picture. It does not perform OCR or recognize written words as sentences. Images with clear outlines and simple backgrounds usually produce more recognizable shapes.
How should I choose columns and character proportions?
Columns range from 20 to 240 and character width divided by line height ranges from 0.3 to 1. Defaults are 100 columns and 0.5. Rows are rounded from source height divided by width, multiplied by columns and the ratio. If output exceeds 1,000 rows or 120,000 cells, reduce columns or the ratio, or crop the source.
Which characters can I use in a custom palette?
Enter 2–32 printable ASCII characters, including spaces, with at least two distinct characters. The left end represents dark cells and the right end represents light cells. A trailing space is an intentional brightness level and is retained. Inversion reverses the brightness-to-character mapping.
How are transparency and brightness handled?
Each pixel is alpha-composited against the selected background color before calculating weighted RGB brightness and applying the 0–200% brightness multiplier. The color affects character selection; it does not change the preview’s paper color. TXT files do not contain color or transparency information.
Why does copied art look stretched elsewhere?
TXT files and the clipboard carry only characters and line breaks, without the preview’s font, letter spacing or line height. Use a monospace font and preserve whitespace. Adjust the character ratio to the target editor’s character width and line height to keep the picture close to its original proportions.
Which images and browser features are supported?
Choose one static PNG, JPEG or WebP file up to 20 MiB, 8,192px per side and 20 million pixels. Animated PNG and WebP are unsupported. Image decoding and Canvas 2D are required. If clipboard permission prevents copying, select the full text manually or download the TXT.
Privacy
Images, conversion settings and text results are processed in the current page’s browser memory. This tool does not send images, filenames, settings or results to a server or tool analytics events, and does not automatically save them in browser storage. Copy and TXT download export the chosen result to your device’s clipboard or a file.
Comments & questions