コンテンツへスキップ
🛠️ToolsShed

Braille Converter

テキストをUnicodeブレイル点字パターンに変換またはその逆を行います。

このツールについて

点字は視覚障害者が利用する触覚文字体系で、3×2のセルに隆起したドットのパターンで各文字を表します。このコンバーターは標準的なテキストをUnicode点字パターンに変換し、また逆変換します。教育目的、アクセシビリティのテスト、点字ディスプレイデバイスとのデジタル通信を可能にします。

ツールを使用するには、テキストを点字に変換するか、点字をテキストに変換するかを選択し、入力を貼り付けて「変換」をクリックします。このツールはグレード1(非縮約)点字を実装しており、各セルが単一の文字、数字、または句読点を表します。出力はUnicode点字文字(U+2800からU+28FF)を使用するため、結果を簡単にコピー、共有、またはドキュメント、メール、その他のアプリケーションに貼り付けることができます。

このツールが生成するのはグレード1点字で、学習やデジタル交換に適しています。公式な点字出版物については、統一英語点字などの確立された標準に従う専門の点字転写サービスに相談してください。すべての処理はブラウザ内でローカルに行われるため、テキストがサーバーに送信されることはありません。

よくある質問

コード実装

# Grade 1 Braille (Unicode Braille Patterns U+2800)
LETTER_DOTS = {
    'a': 0b000001, 'b': 0b000011, 'c': 0b001001, 'd': 0b011001, 'e': 0b010001,
    'f': 0b001011, 'g': 0b011011, 'h': 0b010011, 'i': 0b001010, 'j': 0b011010,
    'k': 0b000101, 'l': 0b000111, 'm': 0b001101, 'n': 0b011101, 'o': 0b010101,
    'p': 0b001111, 'q': 0b011111, 'r': 0b010111, 's': 0b001110, 't': 0b011110,
    'u': 0b100101, 'v': 0b100111, 'w': 0b111010, 'x': 0b101101, 'y': 0b111101,
    'z': 0b110101,
}
DIGIT_DOTS = {str(i): v for i, v in enumerate(
    [0b011010, 0b000001, 0b000011, 0b001001, 0b011001, 0b010001,
     0b001011, 0b011011, 0b010011, 0b001010], 0)}
NUMBER_INDICATOR = 0b111100

def text_to_braille(text: str) -> str:
    result = []
    num_mode = False
    for ch in text.lower():
        if ch.isdigit():
            if not num_mode:
                result.append(chr(0x2800 + NUMBER_INDICATOR))
                num_mode = True
            result.append(chr(0x2800 + DIGIT_DOTS[ch]))
        elif ch in LETTER_DOTS:
            num_mode = False
            result.append(chr(0x2800 + LETTER_DOTS[ch]))
        elif ch == ' ':
            num_mode = False
            result.append(chr(0x2800))
        else:
            result.append(ch)
    return ''.join(result)

print(text_to_braille("Hello 123"))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.