TXT · Text & Data tools

Braille Encoder

Text
Braille
Encodemode0chars in0words0braille cells

Grade 1 braille

Grade 1 braille (uncontracted braille) maps each letter, digit, and punctuation mark to its own cell, one character at a time. H-e-l-l-o produces 5 cells. Grade 2 braille adds contractions (br for brother, ed for education) that shorten long prose but distort technical text, names, and code. The encoding here is Grade 1 only.

Supported input: Latin letters a–z (upper and lowercase), digits 0–9, and common punctuation — period, comma, exclamation mark, question mark, colon, semicolon, apostrophe, hyphen, slash, and parentheses. Other characters, including Greek, Cyrillic, and emoji, are skipped. The input pane shows a warning listing which characters were dropped.

The 6-dot cell

Each braille cell is a 2-column, 3-row grid of 6 dot positions, numbered 1–6 from top to bottom, left column first. The pattern 1-4 means dots 1 and 4 are raised; the other four are flat. Rendered in Unicode: (the letter c).

The Unicode braille block (U+2800–U+28FF) covers all 64 possible 6-dot patterns. Each codepoint is a bitmask: bit 0 is dot 1, bit 5 is dot 6. The blank braille space, U+2800 (⠀), has no dots raised.

Capital and number indicators

Grade 1 braille has no uppercase letter cells. A capital indicator (, dot 6 only) placed before a letter cell marks the next letter as uppercase. Turn it off in the options when case does not matter.

Digits 0–9 share dot patterns with letters a–j: 1 uses the same cell as a (), 2 uses b (), and so on, with 0 sharing the j pattern (). A number indicator (, dots 3–4–5–6) before the first digit opens number mode; a space closes it.

Dot notation

Dot notation replaces each braille cell with its raised dot positions separated by hyphens. The letter h (, dots 1, 2, 5) becomes 1-2-5. Spaces appear as ·. Cells are separated by spaces, making word boundaries visible as gaps between · and the next group.

Use this output to verify which dots are raised without a braille-aware font, or as input for embossers that accept dot notation directly.

Decode

Switch to Decode mode and paste Unicode braille characters (U+2800–U+28FF). Capital indicators restore uppercase letters; number indicators signal digit sequences. Non-braille characters pass through unchanged. Cells outside the supported maps return ?.

Batch mode processes each non-empty line independently in both directions.

Frequently Asked Questions

Letters a–z (with optional capital indicators), digits 0–9 (with optional number indicators), and common punctuation: period, comma, exclamation mark, question mark, colon, semicolon, apostrophe, hyphen, slash, and parentheses. Unrecognised characters are silently dropped.

Grade 1 braille has no uppercase cells. A capital indicator (⠠, dot 6) placed before a cell tells the reader the next letter is uppercase. Turn this off in the options if you only need the letter sequence without case.

Digits 0–9 share dot patterns with letters a–j, so a number indicator (⠼, dots 3–4–5–6) is placed before the first digit in a sequence to signal number mode. Number mode ends at the next space. You can turn this off if the braille will be read in a context that does not need it.

Dot notation replaces each braille cell with its raised dot positions listed with hyphens. The letter h (⠓) becomes 1-2-5. Spaces become ·. This is useful for checking which dots are raised without needing a braille-aware display or font.

Yes. Switch to Decode mode and paste Unicode braille characters (U+2800–U+28FF). The decoder reads capital indicators to restore uppercase letters and number indicators to interpret digit sequences. Cells it cannot resolve return ?.

Grade 1 (uncontracted braille) encodes each character individually, letter by letter. Grade 2 adds hundreds of contractions to shorten common words and letter groups. This encoder uses Grade 1, which is reliable for technical content, names, and any text where contractions could change the meaning.

Yes. Enable Batch by line in the options row. Each non-empty line in the input is encoded or decoded independently, and the output preserves the same line structure.

Explore Our Tools

Browse all tools