updated: lang option from falsam
Code: Select all
Enumeration
#WIN=100
#BUTTON
#BUTTON_FR
#BUTTON_DE
#STRING_GADGET
EndEnumeration
Procedure ReadText()
txt.s=GetGadgetText(#STRING_GADGET)
!var msg = new SpeechSynthesisUtterance(v_txt);
!msg.voice = speechSynthesis.getVoices().filter(function(voice) { return voice.name == 'Whisper'; })[0];
Select EventGadget()
Case #BUTTON_FR
!msg.lang = 'fr-FR';
Case #BUTTON_DE
!msg.lang = 'de-DE';
EndSelect
!speechSynthesis.speak(msg);
EndProcedure
If OpenWindow(#WIN, 0, 0, 640, 480, "Speech API - HTML5", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
StringGadget(#STRING_GADGET,5,5,500,20,"SpiderBasic rox du poney!")
ButtonGadget(#BUTTON,5,40,200,20,"Talk!")
ButtonGadget(#BUTTON_FR,5,70,200,20,"Parle!")
ButtonGadget(#BUTTON_DE,5,100,200,20,"Sprechen!")
BindGadgetEvent(#BUTTON, @ReadText())
BindGadgetEvent(#BUTTON_FR, @ReadText())
BindGadgetEvent(#BUTTON_DE, @ReadText())
EndIf