Demos / Speech synthesis
Have your iPad read it back.
The Web Speech API talks to the same TTS engine that powers VoiceOver. The voice picker lists every voice your device has downloaded — including Personal Voice, if you've trained one.
Loading voices…
How it works
const u = new SpeechSynthesisUtterance(text);
u.voice = chosenVoice;
u.rate = 1.0;
u.pitch = 1.0;
speechSynthesis.speak(u);
speechSynthesis.getVoices() returns asynchronously on
first load — Safari fires a voiceschanged event when
the list is ready. We populate the picker then.