Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2011, 16:46   #1
eaeases
 
Регистрация: 05.05.2011
Сообщений: 4
По умолчанию макрос для чтения текста голосом

Здравствуйте.

Помогите пожалуйста решить задачку. Дело вот в чем:
Есть файл Word с картинками. ( или картинки лежат отдельно в папке ) Текс разбит на абзацы и под каждым абзацем находится картинка.

Так же есть программа которая воспроизводит текст голосом. Эта программа встраивает в Word свои надстройки. Они ни где не прописываются, есть только файл .dll, через который программа встраивается в надстройки ворда. Запустить ее через макрос у меняне получилось.

Нужно создать макрос который при запуске будет выделять текст и отправлять программе для воспроизведения, а картинки показываться на экране. После прочтения абзаца выделение снимается, и вся процедура
повторяется заново для следующего абзаца и изображения.

Подскажите пожалуйста, как это можно сделать.
eaeases вне форума Ответить с цитированием
Старый 06.05.2011, 17:22   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

можно использовать агента для чтения голосом, и в макросы он хорошо вписывается.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.05.2011, 05:59   #3
eaeases
 
Регистрация: 05.05.2011
Сообщений: 4
По умолчанию

что за агент? напишите подробнее пожалуйста
eaeases вне форума Ответить с цитированием
Старый 07.05.2011, 09:41   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

http://www.google.ru/search?client=o...hannel=suggest

Код:
Set myagent = CreateObject("Agent.Control.2") 
 myagent.Connected = True 
 myagent.Characters.Load"0" 
 myagent.Characters("0").MoveTo 514, 220 
 myagent.Characters("0").Show 
 myagent.Characters("0").Play "DoMagic1" 
 myagent.Characters("0").Play "DoMagic2" 
 myagent.Characters("0").Speak " Это пример использование помощника средствами VBS" 
 myagent.Characters("0").MoveTo 926, 591 
 myagent.Characters("0").Speak "До свидания!" 
 myagent.Characters("0").Play "Hide" 
Dim WshShell 
      Set WshShell = WScript.CreateObject("WScript.Shell") 
      WScript.sleep 15000
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.05.2011, 13:11   #5
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

К сожалению, в Windows 7 MS Agent исключен.
http://support.microsoft.com/kb/969168
На самом деле, нужен не агент а поддержка SAPI и какой нибудь русский Text-To-Speech энжин.
Ссылки на них можно найти на страничке программы Говорилка.
http://www.vector-ski.ru/vecs/govori...ad.htm#engines
Весьма вероятно, что вам потребуется и словарик для коррекции речевого синтеза
http://www.vector-ski.ru/vecs/govorilka/dic.htm
Код:
Set objVoice=CreateObject("SAPI.SpVoice") 'cоздаём объект 
Set objVoice.Voice = objVoice.GetVoices.Item(1) 'Выбираем первый голос
objVoice.Speak "Приветик!"  'Произносим текст
Aent вне форума Ответить с цитированием
Старый 07.05.2011, 14:21   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

1- TC не упомянул за ось;
2- вот именно, SAPI ...агентом удобнее пользоваться плюс визуальность.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 08.05.2011, 20:49   #7
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,034
По умолчанию

Aent , жаль, что Агент урезали
у меня Item(1) отсутствует, но есть Item(0), говорит на английском, как зделать на русском языке
и как узнать сколько их Itemов и меня есть на компе, чтобы опробовать их???, я попробовал 1, 2, 3, 4, 5 - нет таких Спасибо
Ципихович Эндрю вне форума Ответить с цитированием
Старый 08.05.2011, 22:23   #8
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

Цитата:
как сделать на русском языке
поставить русский движок.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 09.05.2011, 07:02   #9
eaeases
 
Регистрация: 05.05.2011
Сообщений: 4
По умолчанию

Теперь понятно, почему у меня на семерке MS Agent не запускался.

Aent все получилось, поставил движок Acapela Infovox Desktop и запустил макрос.

1. Как сделать так чтобы, при запуске макроса начиналось чтение всего текста документа, а не отдельной фразы.

2. Еще поставил TextAloud, она воспроизводит текст голосом и встраивается в word. При воспроизведении она выделяет текст и проговаривает его, есть выделение по словам, предложениям и абзацам.

Идея такая: при выделении текста по абзацам запускается макрос на показ картинки и пока читается текст на экране показывается картинка, при выделении следующего абзаца другая картинка. Возможно ли это??
eaeases вне форума Ответить с цитированием
Старый 09.05.2011, 15:37   #10
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

1) По поводу количества голосов.
Как ни "удивительно" .GetVoices.Count …
Открою страшную тайну: свойство Count присутствует практически у всех нормальных коллекций.
2) По поводу чтения всего текста.
Идите в цикле по параграфам. Перед началом воспроизведения текста параграфа
Позиционируйтесь на рисунок (если он присутствует) и растягивайте его размеры на экран - или показывайте любым иным доступным вам образом.
После демонстрации изображения получайте ранг и текст параграфа.
Передавайте текст подпрограмме воспроизведения с ожиданием конца
проговора текста.
3) TextAloud шареварный на 15 дней …

Последний раз редактировалось Aent; 09.05.2011 в 15:41.
Aent вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос для редактирования текста ячеек T_i_m_o_n Microsoft Office Excel 2 23.02.2011 22:53
Ошибка чтения текста )Игнат( Помощь студентам 0 13.11.2010 16:14
Код(скрипт) чтения HTML страницы как текста PuzzleC JavaScript, Ajax 3 06.03.2010 15:35
Компонент для чтения тэгов. Deight Мультимедиа в Delphi 5 08.12.2008 12:43
Удобный для чтения вид Иллидан Операционные системы общие вопросы 4 15.11.2008 15:58