> ## Documentation Index
> Fetch the complete documentation index at: https://rdsciv/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Choosing a Character Set for Your ASCII Art

> Select from six built-in character sets — or define your own — to control the visual texture and density of your ASCII output.

The character set determines which symbols ASCII maps to each cell of your output. Brighter cells get characters near the end of the set; darker cells get characters near the start. Choosing the right set shapes the visual texture of the result as much as any other setting — a block set reads as pixel art, while the dense set renders subtle photographic detail.

## Built-in character sets

| Name       | Characters                            | Best use case                                                              |
| ---------- | ------------------------------------- | -------------------------------------------------------------------------- |
| `light`    | ` .:-=+*#%@`                          | Classic 10-character ramp; good general purpose starting point             |
| `dense`    | 65-character ramp (space through `$`) | 65-character ramp; preserves fine photographic detail                      |
| `blocks`   | ` ░▒▓█`                               | Unicode block elements; reads as pixel art or mosaic                       |
| `binary`   | ` 01`                                 | Minimal two-character ramp; high-contrast data aesthetic                   |
| `dots`     | ` ·∙•●`                               | Dot progression; soft, halftone-like appearance                            |
| `hatching` | ` \|/\-_=#`                           | Crosshatch marks; works well with the Blueprint preset and edge-aware mode |
| `custom`   | *(user-defined)*                      | Type any characters into the text field, ordered dark→light                |

<Tip>
  The `dense` set pairs especially well with smaller cell sizes (4–8 px). At small cells, the 65-character ramp has enough steps to resolve photographic gradients that the `light` set would posterize.
</Tip>

## Defining a custom character set

Select **Custom** from the character set dropdown. A text field appears beneath it. Type the characters you want to use, ordered from darkest (fewest pixels, placed at low luminance) to lightest (most pixels, placed at high luminance). For example, the default fallback is ` .:-=+*#%@`.

Any Unicode characters are accepted, including emoji, though monospace rendering of non-standard glyphs varies by font.

## Font selection

Eight monospace fonts are available, each giving a distinct character to the output:

* **JetBrains Mono** (default)
* **IBM Plex Mono**
* **Space Mono**
* **Fira Code**
* **Source Code Pro**
* **Inconsolata**
* **DM Mono**
* **Courier Prime**
* **System mono** — uses the operating system's built-in monospace font

Select a font from the dropdown in the Character set section. The canvas re-renders immediately.

## Font weight

The font weight slider runs from **100** (hairline) to **900** (black) in steps of 100. The default is 700 (bold). Lighter weights produce more open, airy output; heavier weights fill cells more densely and increase apparent contrast.

## Edge-aware characters

When you check **Edge-aware chars**, ASCII runs Sobel edge detection on the source image before rendering. At pixels where an edge is detected above the edge threshold, the tool substitutes one of four directional line characters:

| Direction                           | Character |
| ----------------------------------- | --------- |
| Horizontal                          | `─`       |
| Diagonal (top-left to bottom-right) | `╲`       |
| Vertical                            | `│`       |
| Diagonal (top-right to bottom-left) | `╱`       |

At pixels below the edge threshold, the normal brightness-to-character mapping applies. You can tune the sensitivity with the **Edge threshold** slider in the Adjustments section.
