以盲文形式表示 Unicode 字符

以盲文形式表示 Unicode 字符

我如何用盲文块表示 Unicode 字符?你可以对 ASCII 字符进行编码,但是 Unicode 呢?我没有看到任何用盲文表示 Unicode 字符的方案。

答案1

盲文中没有统一码的概念。从这个意义上讲,盲文类似于旧的 8 位代码页,它用相同的符号代码表示不同语言中的不同符号。例如,英语中的 和俄语盲文中的 。QЧ

所以答案是没有办法用盲文来表示 Unicode逐个角色。从技术上讲,您当然可以像U+025B这样转换 Unicode 序列⠠⠥ ⠼⠚⠃⠑⠠⠃,这样您就可以表示任何 Unicode 字符,但我认为这不是您想要的。

答案2

盲文字母因语言而异。最初的盲文系统是为法语开发的,后来为其他语言开发了不同的变体,以满足其不同的字符库。这些系统可以以不同的方式扩展,但目前没有国际标准,可能也没有国家标准。在每个系统中,超过 100,000 个 Unicode 字符中的绝大多数都没有盲文渲染。

有关正在使用的不同盲文系统的信息汇编可在以下网址下载(PDF 格式):全球盲文使用情况

答案3

将纯文本(Ascii 或 Unicode)转换为盲文是一个微妙而复杂的问题。盲文图案不是传统意义上的字母,因此字符与盲文图案之间并不总是直接一一对应。根据所翻译脚本的语言/字母表(在某些情况下还有使用环境),您可以用一个盲文块表示多个字母字符,或者用多个盲文块表示一个字母字符。每个块的含义在不同的语言或字母表中也可能有很大差异。

正如 Jan Doggen 所提到的,标准 Unicode 中有一部分代表所有盲文块模式(U+2800..U+28FF)。

涉及复杂性的一个例子;您可以在此处的开源 liblouis 盲文翻译库代码中看到美国 2 级盲文中字母组合的一些特殊情况缩写:

https://code.google.com/p/liblouis/source/browse/trunk/tables/en-ueb-g2.ctb?spec=svn971&r=971

如果您需要翻译某些文本,最好使用现有的翻译器或代码库:

http://libbraille.org/translator.php

http://alasdairking.me.uk/brailletrans/

https://code.google.com/p/liblouis/

相关内容