Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
1 | |
.NET 4.x Транслитерация английского текста в русский21.10.2014, 11:16. Показов 4243. Ответов 28
Метки нет (Все метки)
Есть задумка одна, в нескольких словах озвучу:
Например, транслитерация англ текста в русский обычно выглядит так: "Не Шевелись" -> "Ne Shevelis'". Так вот, как бы реализовать это во время ввода с клавиатуры, с Англ на Русский? Повторюсь, не после набора а во время. Тоесть я написал "sh" ввелось "ш"... есть идея читать по две буквы, и заменять только первую, если нет совпадений с двумя, тоесть если ввел "sx" то заменится только "s" на "с", а вторая буква в ожидании ввода еще одной... как то так... но получается не очень красиво, вторая ожидающая буква будет глаза мозолить.
0
|
21.10.2014, 11:16 | |
Ответы с готовыми решениями:
28
Транслит текста с английского на русский Транслитерация с английского на русский Смена раскладки текста с английского на русский и наоборот Переводчик с английского на русский |
211 / 201 / 63
Регистрация: 24.09.2014
Сообщений: 532
|
|
21.10.2014, 11:21 | 2 |
Посмотри как ввод японского сделан может почерпнешь идеи
1
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
21.10.2014, 11:37 [ТС] | 3 |
arrjj, ссылка не работает. Говорит неверный id video
Добавлено через 3 минуты arrjj, скинь под спойлер текстом или сделай как youtube video
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
21.10.2014, 12:24 [ТС] | 5 |
arrjj, во во чтото подобное и я хочу реализовать тока на русский вместо японского
Добавлено через 9 минут Если кому не лень, может кто и примерами побалует, свой скину позже, щас он не под рукой
0
|
211 / 201 / 63
Регистрация: 24.09.2014
Сообщений: 532
|
|
21.10.2014, 12:27 | 6 |
Примерная логика:
сохраняем в буфер предыдущую введеную букву и в зависимости от неё меняем вывод.
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
21.10.2014, 13:26 [ТС] | 7 |
arrjj, можно и не сохранять, а просто прямо из текстбокса ее читать, ну суть не в этом. Это все понятно. Тут в другом трабл, чтоб не висела английская в ожидании второй буквы...
блин в голове идея крутится, но вот реализовывать начну и начнется головняк конкретный как всегда Добавлено через 4 минуты arrjj, хотя ты прав, на лету менять по одной, а в буфере читать сочетания, и если найдено совпадение, например "буфер + введённая = SH" значит стираем предыдущую сконвертированную C и заменаем на нашу Ш... но тоже есть неудобство... надо пробовать Добавлено через 3 минуты Либо еще вариант, во всплывающем туллтипе или менюшке при вводе буквы, если найдено сочетание этой буквы с другими предлагать варианты замены, что юзер видел что процесс слежения за вводом идет. Блин. Идей куча... надо мутить ))) Добавлено через 6 минут Единичные менять проблем не составляет, а вот эти SH, CH, TS(Ц), Щ(еще не придумал), ьъ(думаю хватит одной ' ), ZH(Ж) вроде все? Добавлено через 39 минут Где то был у меня пример автозаполнения текстбокса по первым введенным буквам, производит поиск в массиве или из комбо бокса, предлагает варианты замены. Можно этот пример использовать в качестве подсказки ввода для пользователя... найду выложу, но он еще с vb6, но это не проблема. Переделаем.
0
|
1484 / 579 / 106
Регистрация: 26.03.2012
Сообщений: 1,028
|
|
21.10.2014, 14:18 | 8 |
Зачем придумывать? Все уже придумано за нас: Транслитерация
1
|
211 / 201 / 63
Регистрация: 24.09.2014
Сообщений: 532
|
|
21.10.2014, 14:29 | 9 |
По ссылке PAnT0P'а полная таблица всех вариантов транслитерации. Проблемы с вариантами ввода (sh => ш или sh => сх) можешь решить дропдауном по нажатию например Ctrl'а (т.е. единичное нажатие меняет варианты последовательно, а долгое нажатие выпадает комбобокс со всеми вариантами)
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
|
21.10.2014, 15:05 | 10 |
А если компромиссный вариант? Пословно. Транслитерация слова целиком после ввода пробела. А до ввода пробела оно (слово) отображается как есть?
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
21.10.2014, 17:19 [ТС] | 11 |
Юпатов Дмитрий, ну это не сложно я думаю
0
|
4 / 4 / 1
Регистрация: 10.03.2013
Сообщений: 43
|
||||||
23.10.2014, 22:06 | 12 | |||||
Вот. Должно работать
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
25.10.2014, 17:38 [ТС] | 13 |
KrIvEdKA, игтересный пример, мне понравился своей простотой. СПАСИБО. Только я так понял он транслитерует с Русского на Англ но не обратно?
И еще, покажи тут пример функции "ПЕРЕВОДИТЬ", тоже интересно было бы узнать что ты имеешь ввиду.
0
|
4 / 4 / 1
Регистрация: 10.03.2013
Сообщений: 43
|
|
26.10.2014, 12:41 | 14 |
Yury Komar, функция которую сверху скинул. Чтобы переводить обратно нужно функцию посложнее делать. Эту использовал для создания ЧПУ.
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
26.10.2014, 21:36 [ТС] | 15 |
KrIvEdKA, давай придумаем для варианта в обратном направлении... желательно посимвольно либо в момент ваода с клавиатуры - тогда вообще огонь будет. Правда очень нужно именно обратный вариант с буквами ш, щ и так далее...
спасибо за Assistance.
0
|
33 / 33 / 6
Регистрация: 24.11.2015
Сообщений: 330
|
|
18.01.2016, 09:24 | 16 |
Yury Komar, Пример хороший но буква ш и щ у меня как то переводится не на SH а на Si, щ на SCi.Где может быт ошибка? Функция на верху. Правильно копировал вроде.
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
18.01.2016, 09:41 [ТС] | 17 |
Khaker_tt, может скопировали неверно?
0
|
33 / 33 / 6
Регистрация: 24.11.2015
Сообщений: 330
|
|
18.01.2016, 10:12 | 18 |
Yury Komar, Нет правильно. только буква H(анг) у меня компьютер не определять. Даже в Ms-word тоже напечатает i это по моему неполадка в системе.
Добавлено через 3 минуты Ага нашёл мне надо было заменить Щ на Ы и наоборот. Спасибо тема Close. Добавлено через 21 минуту Я рано порадовался. Нет так не пойдёт я тестировал на другой комп мои изменения неправильно. Значить проблема точно компе.
0
|
Модератор
4203 / 3287 / 497
Регистрация: 27.01.2014
Сообщений: 6,033
|
|
18.01.2016, 10:34 [ТС] | 19 |
Khaker_tt, проблема в раскладке клавиатуры видимо.
0
|
11 / 11 / 4
Регистрация: 02.04.2015
Сообщений: 147
|
||||||
18.01.2016, 14:21 | 20 | |||||
Yury Komar, так проще всего:
2
|
18.01.2016, 14:21 | |
18.01.2016, 14:21 | |
Помогаю со студенческими работами здесь
20
Перевод меню с английского на русский. Переводчик с английского на русский и наоборот Дешифратор с английского языка на русский Переводчик с английского на русский и обратно Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |