Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Реклама

Windows presentation foundation with - MacDonald M.

MacDonald M. Windows presentation foundation with — Вильямс , 2008. — 928 c.
ISBN 978-5-8459-1429-3
Скачать (прямая ссылка): wpfwindowspresente2008.pdf
Предыдущая << 1 .. 382 383 384 385 386 387 < 388 > 389 390 391 392 393 394 .. 473 >> Следующая

Распознавание текста
Распознавание текста — это средство трансляции произносимой пользователем речи с переводом ее в текст. Как и в случае синтеза речи, распознавание речи — средство операционной системы Windows. Распознавание текста встроено в Windows Vista, но не в Windows XP. Пользователям Windows XP оно доступно в составе Office XP и более поздних версий, в Windows XP Plus! Pack либо в бесплатном комплекте Microsoft Speech Software Development Kit (который можно загрузить по адресу http:// www.microsoft.com/speech/download/sdk51).
На заметку! Если в данный момент у вас не запущено распознавание текста, панель инструментов распознавания речи появится, когда вы создадите экземпляр класса SpeechRecognizer. Если при попытке создать экземпляр класса SpeechRecognizer не будет сконфигурировано распознавание речи по вашему голосу, то Windows автоматически запустит мастер, который проведет вас по всем шагам этого процесса.
Распознавание речи — это также средство облегчения работы с Windows для людей с ограниченными возможностями. Благодаря ему, такие люди могут голосом взаимодействовать с обычными элементами управления. Распознавание речи также позволяет использовать компьютер, не занимая руки, что очень удобно в некоторых ситуациях.
Наиболее простой способ использовать распознавание речи — это создать экземпляр класса SpeechRecognizer из пространства имен System.Speech.Recognition. Затем вы можете присоединить обработчик к событию SpeechRecognized, которое инициируется всякий раз, когда произнесенное слово успешно преобразуется в текст:
SpeechRecognizer recognizer = new SpeechRecognizer(); recognizer.SpeechRecognized += recognizer_SpeechReconized;
Затем в обработчике событий вы можете извлечь текст из свойства SpeechRecognized EventArgs.Result:
private void recognizer_SpeechReconized(object sender,
SpeechRecognizedEventArgs e)
{
MessageBox.Show("You said:" + e.Result.Text);
}
SpeechRecognizer служит оболочкой для COM-объекта. Чтобы избежать неприятных сюрпризов, вы должны объявить его как переменную-член в окне вашего класса (чтобы объект оставался “живым” до тех пор, пока существует окно), и при закрытии
Book_Pro_WPF-2.mdb 757 19.05.2008 18:11:24
758 Глава 22
окна вы должны вызывать его метод РФэрозеО (чтобы освободить ресурсы, используемые распознавателем речи).
На заметку! Класс SpeechRecognizer в действительности генерирует последовательность событий при обнаружении аудиосигнала. В начале инициируется SpeechDetected, если звук идентифицируется как речь. Затем один или более раз инициируется SpeechHypothesized, когда слова распознаются на основе опыта. И, наконец, SpeechRecognizer инициирует событие SpeechRecognized, если ему удается успешно обработать текст, либо SpeechRecog nitionRejected — если нет. Событие SpeechRecognitionRejected включает информацию о предположении SpeechRecognizer относительно того, что может означать произнесенное слово, когда степень уверенности недостаточно высока, чтобы принять ввод.
Обычно использовать распознавание речи в такой манере не рекомендуется. Это связано с тем, что WPF имеет собственное средство UI Automation, которое работает совместно с механизмом распознавания речи. При правильной конфигурации оно позволяет пользователям вводить текст в текстовых элементах управления и инициировать щелчки на кнопках при произнесении их автоматизированных (automation) имен. Однако вы можете применять SpeechRecognition для добавления поддержки более специализированных команд в специфических сценариях. Это делается путем определения грамматики, основанной на спецификации Speech Recognition Grammar Specification (SRGS).
Грамматика SRGS идентифицирует правильные команды для вашего приложения. Например, она может определять, что команды могут использовать только одно из небольшого набора слов (on или off), и что эти слова могут использоваться только в определенных комбинациях (blue on, red on, blue off и т.д.).
Вы можете сконструировать грамматику SRGS двумя способами. Можно загрузить ее из документа SRGS, который описывает правила грамматики с применением синтаксиса на основе XML. Чтобы сделать это, вам нужно воспользоваться классом SrgsDocument из пространства имен System.Speech.Recognition.SrgsGrammar:
SrgsDocument doc = new SrgsDocument("app_grammar.xml");
Grammar grammar = new Grammar(doc); recognizer.LoadGrammar(grammar);
В качестве альтернативы вы можете сконструировать грамматику декларативно, используя для этого GrammarBuilder. Класс GrammarBuilder играет роль, аналогичную рассмотренному в предыдущем разделе PromptBuilder — позволяет добавлять правила грамматики одно за другим, создавая постепенно полное описание грамматики. Например, ниже приведена декларативно сконструированная грамматика, принимающая ввод из двух слов, где первое слово имеет пять возможных вариантов, а второе — два:
GrammarBuilder grammar = new GrammarBuilder();
grammar.Append(new Choices("red", "blue", "green", "black", "white")); grammar.Append(new Choices("on", "off")); recognizer.LoadGrammar(new Grammar(grammar));
Предыдущая << 1 .. 382 383 384 385 386 387 < 388 > 389 390 391 392 393 394 .. 473 >> Следующая