PDA

Просмотр полной версии : Проверка орфографии в spark TextArea


DaFive
12.10.2012, 11:31
Товарищи, подскажите в каком направлении двигаться.
Есть задача проверка орфографии и подсветки (подчеркивании, выделение цветом) неправильных слов.
Сама проверка орфографии реализована уже через Яндекс.спеллер (приложения онлайновое).

Так вот, какой компонент лучше всего для этого дела применить? Помимо самой подсветки, нужно по правому клику выводить варианты подстановки слов (ну яндекс их предоставляет)

Пробовал с TextArea, - там то с правым кликом муть какая-то, то setFormatOfRange непредсказуемый (для меня по крайней мере).

Может есть что готовое или подскажите в каком направлении копать?

Astraport
12.10.2012, 12:48
Я когда-то юзал Squiggly и только для подстановки слов, без подсветки. Поищи по ключевым словам spell check, highlight.

Может что и поможет:
http://www.remotesynthesis.com/post.cfm/spell-checking-in-flex-with-squiggly-part-1
http://www.jspresso.org/forum/integrating-spell-check-text-area
http://code.google.com/p/flexlighter/
http://www.andensolutions.com/index.php/blogs/spell-checking-in-flashflex-adobe-squiggly/ (здесь в примере и подсветка и подстановка по правому клику реализована)
http://www.flextendibles.com/

DaFive
12.10.2012, 12:56
Squiggly монстрилла, но потребление памяти у него какое-то неимоверное, при загрузке и применении к TextArea просто мега-затуп происходит.

Хозяйке на заметку, если вдруг кому понадобится Squiggly.
Для русского языка нужно будет скачать сам словарь и правила к нему (dic, affix-файлы), ссылки есть на Адобовском сайте.
Сейчас подцепил его аккурат к проекту. Сначала он ругался непонятно на что при инициализации. Опытным путём выяснилось, что проект содержит кучу либ, 2 из которых SpellUI и SpellUIEx (как раз для спарк-компонентов). Если подключить их проекту - возникает конфликт. Поэтому для Spark-компонентов подключаем только SpellUIEx, а для mx - SpellUI. Две нельзя.

Буду смотреть в сторону хайлайтеров других и все таки завязываться на Яндекс.спеллер.

Astraport, спасибо.