هذا الدليل متوفر حاليًا باللغة الإنجليزية فقط.
Best Characters for ASCII Art: Ramps, Blocks and Braille
Pick the right characters for ASCII art: density ramps, 10 vs. 70 levels, Unicode blocks, Braille, custom sets, monospace fonts and what works in Discord.
The characters you choose decide how your ASCII art looks: how smooth the shading is, how much detail survives, and whether it still lines up when you paste it somewhere else. Every converter works the same way at heart, by measuring the brightness of each cell of an image and swapping in a character with a matching amount of ink. This guide shows how to pick that character set.
Character density: the core idea
Think of every character as a small tile. Some, like @ or #, fill much of their tile with ink. Others, like . or :, leave it almost empty. That fraction of inked area is the character's density, and it acts like a grey value.
A ramp is a list of characters sorted by density. The converter maps the darkest parts of the image to one end of the ramp and the lightest parts to the other.
Why ramps run from @ to space
The classic short ramp goes from heaviest to lightest:
@%#*+=-:.
The last character is a space, which has no ink at all, so it represents the background colour. On dark text over a light background, @ is the darkest tone. On a dark terminal with light text, the logic flips and @ becomes the brightest. That is why converters have an Invert option: use it whenever the image looks like a photo negative.
10-level vs. 70-level ramps
A 10-level ramp like the one above gives clean, bold results. Each character is clearly distinct, so the output is readable and works well at small widths.
A 70-level ramp uses almost every printable ASCII character, from $ and @ down to ' and .. Smaller steps in density give smoother gradients and more texture, which suits portraits and wide output. The trade-off is that neighbouring characters differ only slightly, so at small widths the result can look noisy.
Rule of thumb: use 10 levels under about 80 characters wide, and try 70 levels when you go wider.
Unicode shade blocks
█▓▒░
The full block and the three shade characters give only five steps including space, but they fill the whole cell, so there are no gaps between characters. The result looks solid and pixel-like, close to retro game graphics. They need a font that includes these glyphs; most modern monospace fonts do.
Braille: the most detail per character
Each Braille character is a grid of 2×4 dots, and Unicode includes all 256 on/off combinations. Instead of choosing one character per brightness value, a Braille converter can turn each of the eight dots on or off independently. One character therefore carries eight sub-pixels, so you get much finer edges and detail at the same width:
⣿⣿⣷⣤⣀⠀
The catch is that Braille shows shape rather than smooth tone, and some fonts, especially on phones, render the blank Braille character or the dot spacing inconsistently.
Binary, Matrix, emoji and math sets
- Binary (01): only two glyphs, so shading comes mostly from shape. Best for a hacker or data aesthetic rather than realism.
- Matrix (katakana + digits): the "digital rain" look, ideally green on black. In many fonts katakana are wider than Latin letters, so alignment can shift outside the tool's own export.
- Emoji: playful and colourful, but emoji are not fixed-width in most fonts and usually take two terminal columns, so use them for images and video exports rather than copied text.
- Math symbols: a technical, textured look that works well for posters and abstract pieces.
Custom character sets
You can type your own characters. A few ideas:
- A repeated word, like a name or brand, to make the image out of text.
- Only line characters, such as
/\|_, for a sketchy, engraved look. - A hand-tuned ramp: order your characters from most to least ink, and end with a space for the background.
If a custom set looks flat, check that it contains both dense and sparse characters, or increase contrast.
The monospace requirement and aspect ratio
ASCII art only lines up in a monospace font, where every character takes the same width. In a proportional font, an i is narrower than an M, so every row drifts.
Monospace cells are also taller than they are wide, typically about twice as tall. If a converter sampled square cells, the image would come out stretched vertically. Good converters compensate by sampling fewer rows than columns. When you render to an image yourself, keep the line height tight so the proportions stay true.
Try it
Open the ASCII Art Generator or go straight to Image to ASCII, then load a photo.
- Set the width (30–250 characters).
- Switch between Classic, Detailed, Unicode blocks and Braille, and watch how the same image changes.
- Raise contrast and adjust gamma until the subject separates from the background.
- Toggle Invert if dark and light are swapped.
- Try the Braille High-Res or Unicode 8-Bit Blocks presets for a quick comparison.
For text banners instead of images, use the Text to ASCII tool with its FIGlet fonts.
What survives Discord and terminals
- Classic and Detailed ASCII are the safest. They use plain characters that every monospace font supports.
- Unicode blocks work in most modern terminals and in Discord code blocks.
- Braille usually works on desktop but can misalign on some phones.
- Emoji and katakana often break alignment in text, so export them as PNG, GIF or video instead.
In Discord, always paste inside a code block so the font is monospace. The Copy for Discord button wraps the art for you and warns if it is over the 2,000-character message limit. See ASCII Art for Discord for more tips.
الأسئلة الشائعة
إجابات سريعة حول هذه التقنية
What is the best character set for photos? ▼
Use the 70-level Detailed ramp for wide, photo-like output, or Braille for the finest detail. The 10-level Classic ramp is cleaner at small widths.
Why does my ASCII art look like a negative? ▼
Whether @ reads as dark or bright depends on the background colour. Turn on Invert to swap the mapping.
Why does my ASCII art break when I paste it? ▼
It is being shown in a proportional font. Paste it inside a code block or anywhere that uses a monospace font.
Does Braille ASCII art work in Discord? ▼
Usually on desktop, inside a code block. Some mobile fonts render Braille spacing inconsistently, so check it on a phone if that matters.
Can I make ASCII art from a single word? ▼
Yes. Enter the word as a custom character set and the image will be built from its letters.
هل أنت مستعد لصنع تأثير ASCII الخاص بك؟
Transform images, videos, and webcam feeds in real time with 0 uploads.
أدلة ودروس ذات صلة
ما هو الهافتون (Halftone)؟ شرح النقاط وزوايا الشبكة ودقة LPI
ما هو الهافتون (Halftone)؟ تعرّف كيف تبني المطابع الصور من نقاط متفاوتة الحجم، ولماذا تمنع زوايا الشبكة تأثير الموآريه، وكيف تصنع التأثير بنفسك.
ما هو التنقيط (Dithering)؟ شرح Floyd–Steinberg وAtkinson وBayer
ما هو التنقيط (Dithering)؟ تعرّف كيف تحاكي أنماط Floyd–Steinberg وAtkinson وBayer درجات إضافية بألوان قليلة، ومتى تختار كلًا منها لصورك.
How to Make an ASCII Edit for TikTok, Reels and Shorts
Plan and build a short-form ASCII edit: choose footage, handle 9:16 and the 1280×720 export, pick a structure and preset, and keep your original audio.