Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Речевое оповещениеРечевое оповещение является важным элементом интерфейса приложения «Гиперсистема» и позволяет акцентировать внимание пользователя на наиболее важных событиях и ситуациях в процессе моделирования. Обеспечивается средствами специальной библиотеки SpeechLib_TLB, подключаемой к среде DELPHI, с учетом специфики воспроизведения смешанных русско-латинских текстов. Необходимость речевого оповещения (обычно это подача входных сигналов, переключения внутренних элементов и выдача выходных сигналов) задается установкой в 1 специального параметра в программных конструкциях модели. Первым делом, чтобы воспользоваться SAPI нам необходимо импортировать в Delphi библиотеку типов. Для этого открываем Delphi IDE, выбираем в главном меню «Component — Import Component» в открывшемся окне выбираем «Import Type Library» и жмем «Next»:
Теперь находим в списке «Microsoft Speech Object Library», выбираем её, жмем «Next»
В новом окне ставим галку напротив «Generate Component Wrappers» и жмем «Finish»:
Теперь у нас есть заголовочный файл для работы с SAPI 5.4. и можно приступать к работе. Библиотека подключается в разделе uses:
uses Windows, …, SpeechLib_TLB, …
Для того, чтобы перевести текст в голос потребуется всего один интерфейс — ISpVoice:
begin pvoice:=TSpVoice.Create(nil); Voices:=pvoice.GetVoices('Name=ELAN TTS Russian (Nicolai 16Khz)',''); pvoice.Voice:=Voices.Item(0); pvoice.Speak(Текст, SVSFlagsAsync); pvoice.WaitUntilDone(infinite); end;
где 'Name=ELAN TTS Russian (Nicolai 16Khz)' – название голосового движка.
|