Skip to content

Commit c1c6aeb

Browse files
committed
Add charset examples and width sizing guide to README
Visual examples of all 8 charsets and 4 width levels (40/80/120/200) with practical guidance on choosing the right settings.
1 parent d6a47b5 commit c1c6aeb

14 files changed

+77
-11
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,4 +176,6 @@ docs/
176176
*.jpg
177177
*.jpeg
178178
!ascii_preview.png
179-
!ascii_logo_preview.png
179+
!ascii_logo_preview.png
180+
!charset_*.png
181+
!width_*.png

README.md

Lines changed: 74 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -73,16 +73,80 @@ Returns available character sets with descriptions and recommendations.
7373

7474
## Character Sets
7575

76-
| Name | Levels | Best for | Description |
77-
|------|--------|----------|-------------|
78-
| `detailed` | 10 | both | ASCII gradient, good all-rounder |
79-
| `classic` | 70 | photo | Maximum tonal range |
80-
| `simple` | 9 | photo | Unicode block shading |
81-
| `hifi` | ~9 | photo | Repeated chars for fine gradation |
82-
| `minimal` | 3 | logo | Binary black/white, crispest edges |
83-
| `blocks` | ~4 | logo | Coarse block shading |
84-
| `dense` | ~4 | logo | Heavy block shading |
85-
| `ultra` | ~9 | both | Balanced ASCII gradation |
76+
Each charset maps pixel brightness to a different set of characters. The number of unique characters determines how much tonal detail you get.
77+
78+
### `detailed` — 10 levels, good all-rounder (default)
79+
80+
`@%#*+=-:. ` — balanced between detail and readability. Works for both photos and logos.
81+
82+
![detailed charset](charset_detailed.png)
83+
84+
### `classic` — 70 levels, maximum tonal range
85+
86+
`$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,"^'. ` — the most detailed charset. Every subtle gradient gets its own character. Best for photos where you want maximum fidelity.
87+
88+
![classic charset](charset_classic.png)
89+
90+
### `simple` — 9 levels, Unicode block shading
91+
92+
`█▉▊▋▌▍▎▏ ` — smooth, print-like appearance using Unicode block elements. Looks like a halftone print.
93+
94+
![simple charset](charset_simple.png)
95+
96+
### `blocks`~4 levels, coarse block shading
97+
98+
`██▓▒░ ` — bold, high-contrast look. Good for logos and silhouettes where you want punch over detail.
99+
100+
![blocks charset](charset_blocks.png)
101+
102+
### `minimal` — 3 levels, binary
103+
104+
`■□ ` — just solid, outline, and empty. Crispest edges, no gradients. Best for logos and icons.
105+
106+
![minimal charset](charset_minimal.png)
107+
108+
### `hifi`~9 levels, fine gradation
109+
110+
Repeated characters (`@@@###***+++===---:::...`) create smooth tonal bands. Good for photos.
111+
112+
![hifi charset](charset_hifi.png)
113+
114+
### `dense`~4 levels, heavy block shading
115+
116+
Heavy Unicode blocks — bold, poster-like look.
117+
118+
![dense charset](charset_dense.png)
119+
120+
### `ultra`~9 levels, balanced ASCII
121+
122+
Repeated ASCII characters (`@@@###***+++===---:::...`) — like `hifi` but pure ASCII, no Unicode.
123+
124+
![ultra charset](charset_ultra.png)
125+
126+
## Choosing a Width
127+
128+
The `width` parameter controls how many characters wide the output is. More characters = more detail, but also more text.
129+
130+
| Width | Best for | Detail |
131+
|-------|----------|--------|
132+
| 40 | Thumbnails, chat messages | Blocky, shape only |
133+
| 80 | Terminal default, Discord | Good balance |
134+
| 120 | Wide terminals | Sharp, features visible |
135+
| 200 | Maximum detail | Near-photographic |
136+
137+
### Width 40
138+
![width 40](width_40.png)
139+
140+
### Width 80 (default)
141+
![width 80](width_80.png)
142+
143+
### Width 120
144+
![width 120](width_120.png)
145+
146+
### Width 200
147+
![width 200](width_200.png)
148+
149+
**Rule of thumb:** match `width` to where the output will be displayed. Terminal? Use 80-120. Discord message? Use 40-60. Saving to a file? Go big with 160-200.
86150

87151
## License
88152

charset_blocks.png

61.5 KB
Loading

charset_classic.png

150 KB
Loading

charset_dense.png

61.8 KB
Loading

charset_detailed.png

69.5 KB
Loading

charset_hifi.png

63.7 KB
Loading

charset_minimal.png

31.6 KB
Loading

charset_simple.png

36.1 KB
Loading

charset_ultra.png

60.8 KB
Loading

0 commit comments

Comments
 (0)