TexttoSpeechコントロールで複数の言葉を読み上げさせるには?

解決


gibiriro  2007-05-01 06:54:35  No: 136292

(1)Texttospeechコントロールを使って、英語と日本語の両方の読みあげをさせたいのですが、可能ですか?

(2)現在の状態は、最初、英語の読み上げエンジンをインストールしてあって、あとから日本語用のエンジンをインストールしましたが、日本語を読み上げません。もし、両方の言葉の読み上げが不可能ならば、日本語だけでも読み上げさせたいです。
英語用のエンジンをアンインストールすれば、日本語を読み上げるようになるのでしょうか?

お願いします。


ヤマ@文系  2007-05-01 09:07:03  No: 136293

'プロパティでなんか変更できるようなことが書いてありました
http://www.roy.hi-ho.ne.jp/mutaguchi/bbs/list103.shtml


gibiriro  2007-05-01 19:37:11  No: 136294

ありがとうございます。
教えていただいたページにしたがって、

TextToSpeech1.LanguageID 1041

としてみましたが、うまくいきませんでした。
日本語のエンジンlhttsipj.exeはインストールしてあります。
英語の読み上げはうまくいきます。


ヤマ@文系  2007-05-03 01:14:05  No: 136295

ずいぶん、配布方法が面倒だなぁとくらいしか
思っていなかったのでよく知りませんが。
Agentを使えば可能みたいです。

http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200202/02020002.txt
過去ログにたかみちえ様が
発言なさっているようです。


スクリプトプログラマ  2007-05-07 08:47:17  No: 136296

こんな感じで一覧して
Set TTS=CreateObject("TextToSpeech.TextToSpeech.1")
ReDim Rows(TTS.CountEngines+1)
Rows(0)=Join(Array("#","Speaker","Age","Gender","LanguageID","ModeID"&vbTab&vbTab,"ModeName"),vbTab)
For k=1 To TTS.CountEngines
  Rows(k)=Join(Array(k,TTS.Speaker(k),TTS.Age(k),TTS.Gender(k),TTS.LanguageID(k),TTS.ModeID(k),TTS.ModeName(k)),vbTab)
Next
Rows(k)=Join(Array("CountEngines",TTS.CountEngines,"CurrentMode",TTS.CurrentMode,"TTSMode",TTS.TTSMode),vbTab)
msgbox Join(Rows,vbLf)

TTS.Select 番号
で変更します。


giiriro  2007-05-29 02:12:18  No: 136297

アドバイスありがとうございます。
CountenginesプロパティとSelectメソッドを使うことで
うまくいきました。返事遅れて申し訳ありませんでした。
解決とさせていただきます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加