Java библиотека для получения синонима буквы / аналогичного глифа - PullRequest
1 голос
/ 21 ноября 2011

Хотелось бы узнать, есть ли библиотека, которая позволяет персонажам получать свои синонимы?

что-то вроде:

char c = getNextChar();
if (c == latin.H || c == cyrillic.H) {
    //...
}

1 Ответ

2 голосов
/ 21 ноября 2011

Итак, насколько я понимаю, вам не нужны «синонимы» букв; вам нужны буквы с одинаковыми «глифами» (фигурами).

Я не знаю, существует ли такая библиотека. Однако вы можете сделать это, отобразив символы с использованием вашего любимого шрифта и проверив глиф «одинаковость».

Например, вы можете предпринять следующие шаги:

  • Скачать UniFont , предпочтительно в форме BDF
  • Рассчитать контрольную сумму (например, MD5) для растрового изображения каждого символа
  • Группировка символов на основе их контрольной суммы.

Я создал небольшой тестовый скрипт Python 2.7 (для целей разработки), выполняя описанные выше шаги, создавая что-то вроде (отрывок):

Group 0041
        U+0041 LATIN CAPITAL LETTER A
        U+0391 GREEK CAPITAL LETTER ALPHA
        U+13AA CHEROKEE LETTER GO
Group 0042
        U+0042 LATIN CAPITAL LETTER B
        U+0392 GREEK CAPITAL LETTER BETA
        U+0412 CYRILLIC CAPITAL LETTER VE
        U+13F4 CHEROKEE LETTER YV

YMMV.

...