User Rating 0.0
Total Usage 0 times
0 characters
10px
4px
Preview
Is this tool helpful?

Your feedback helps us improve.

About

This tool converts ASCII text into sequences of colored SVG circles following a phonemic-linguistic color mapping system. Each letter, digit, and punctuation mark maps to a circle with a specific fill color, border color, and inner accent. The mapping is not arbitrary. Consonants are organized by place of articulation (POA), manner, and voicing: voiced consonants receive a red border (border = #E74C3C), vowels carry yellow borders, and bilabial sounds use a dark blue center. Digits 0 - 4 mirror digits 5 - 9 with inverted palettes. Grouping characters like parentheses and brackets follow symmetrical color patterns. This mapping originated from the Color Text Chrome Extension project.

The converter handles uppercase and lowercase letters, digits, common punctuation, and whitespace. Unsupported characters render as gray circles. Spaces render as gaps. Line breaks are preserved. The output is valid SVG that can be copied, downloaded, or embedded directly into HTML. Note: because English letters do not fully correspond to single phonemes, the phonemic color organization is approximate. Characters like c and x represent multiple phonemes and receive compromise mappings.

ascii color converter svg text-to-color phonemic colored-circles visual-text

Formulas

Each character c in the input string maps to a triple of colors through a lookup function:

colorMap(c) (fill, border, inner)

The SVG output for each character is a group of three concentric circles at position x = i × spacing, where i is the character index within its line:

Outer circle: rborder = 10px
Fill circle: rfill = 8px
Inner circle: rinner = 4px

The digit mirroring rule inverts fill and inner colors: for digit d where 5 d 9, its colors equal the swapped palette of digit (9 d). Border color for voiced consonants is fixed at #E74C3C (red). Border color for vowels is fixed at #FFC107 (yellow). Where fill is the main circle body color, border is the outermost ring indicating voicing or vowel status, and inner is the small central dot indicating place of articulation.

Reference Data

CharacterFillBorderInnerCategory
A / a#FFEB3B#FFC107#FFF9C4Vowel (open front)
B / b#1565C0#E74C3C#0D47A1Voiced bilabial stop
C / c#26A69A#4DB6AC#00897BVoiceless velar/alveolar
D / d#42A5F5#E74C3C#1E88E5Voiced alveolar stop
E / e#FFF176#FFC107#FFF9C4Vowel (close-mid front)
F / f#90CAF9#64B5F6#42A5F5Voiceless labiodental
G / g#66BB6A#E74C3C#43A047Voiced velar stop
H / h#BDBDBD#9E9E9E#E0E0E0Voiceless glottal
I / i#FFD54F#FFC107#FFF8E1Vowel (close front)
J / j#7E57C2#E74C3C#5E35B1Voiced palatal
K / k#66BB6A#388E3C#2E7D32Voiceless velar stop
L / l#29B6F6#E74C3C#0288D1Voiced alveolar lateral
M / m#1E88E5#E74C3C#0D47A1Voiced bilabial nasal
N / n#42A5F5#E74C3C#1565C0Voiced alveolar nasal
O / o#FFE082#FFC107#FFF8E1Vowel (close-mid back)
P / p#1565C0#1976D2#0D47A1Voiceless bilabial stop
Q / q#66BB6A#4CAF50#388E3CVoiceless velar (digraph)
R / r#EF5350#E74C3C#C62828Voiced alveolar approx.
S / s#26C6DA#00ACC1#00838FVoiceless alveolar fric.
T / t#42A5F5#1976D2#1565C0Voiceless alveolar stop
U / u#FFE0B2#FFC107#FFF3E0Vowel (close back)
V / v#90CAF9#E74C3C#42A5F5Voiced labiodental
W / w#1E88E5#E74C3C#1565C0Voiced labial-velar
X / x#26A69A#00897B#004D40Voiceless velar cluster
Y / y#FFCC80#FFC107#FFE0B2Palatal approx./vowel
Z / z#26C6DA#E74C3C#00838FVoiced alveolar fric.
0#EEEEEE#BDBDBD#F5F5F5Digit (zero)
1#E57373#EF5350#FFCDD2Digit (low)
2#FFB74D#FFA726#FFE0B2Digit (low)
3#FFF176#FFEE58#FFF9C4Digit (low)
4#81C784#66BB6A#C8E6C9Digit (low)
5#C8E6C9#66BB6A#81C784Digit (high, mirror 4)
6#FFF9C4#FFEE58#FFF176Digit (high, mirror 3)
7#FFE0B2#FFA726#FFB74DDigit (high, mirror 2)
8#FFCDD2#EF5350#E57373Digit (high, mirror 1)
9#F5F5F5#BDBDBD#EEEEEEDigit (high, mirror 0)

Frequently Asked Questions

The color mapping follows a loose phonemic system. Red borders signal voicing (vocal fold vibration), distinguishing pairs like B/P and D/T. Yellow borders mark vowels, which are inherently voiced but form a distinct articulatory class. This visual encoding lets you see phonological patterns in the color output - clusters of red indicate voiced consonant sequences, while yellow clusters reveal vowel-heavy passages.
Digits 0 through 4 each have a primary palette with fill, border, and inner colors. Digits 5 through 9 use the same palette but with the fill and inner colors swapped. So digit 1 has fill #E57373 and inner #FFCDD2, while digit 8 (its mirror at 9 minus 1) has fill #FFCDD2 and inner #E57373. This creates visual symmetry while maintaining distinguishability between all ten digits.
Any character without an explicit mapping - including Unicode characters, control characters, and extended ASCII beyond the supported set - renders as a neutral gray circle with fill #BDBDBD, border #9E9E9E, and inner #E0E0E0. This ensures the output never breaks. Spaces produce gaps (no circle) and line breaks create new rows in the SVG output.
Yes. The generated SVG is standards-compliant and can be embedded directly in HTML via the Copy HTML button, or downloaded as a standalone .svg file. The SVG scales without quality loss at any resolution. For print, use the download function and import into any vector graphics application. The tool also includes print styles that format the preview area for A4 paper.
English orthography does not map one-to-one to phonemes. The letter C represents both /k/ (as in 'cat') and /s/ (as in 'city'). The letter X typically represents the cluster /ks/. Since a single circle cannot represent multiple phonemes simultaneously, these letters receive colors that sit between their possible phonemic categories - C gets a teal that blends velar and alveolar hues, X gets a darker variant of the same family.
Grouping characters follow symmetrical color patterns. Opening brackets, parentheses, and braces use one directional color scheme, while their closing counterparts use the inverse. Quotation marks (both straight and curly) map to the same color. Punctuation marks like periods, commas, and exclamation points use muted neutral tones to avoid visual dominance over the letter circles in the output sequence.