View Full Version : read it 2 me..

03-24-2003, 03:35 AM
I have some text in a text box, or file
does anyone know a way i can get IE to read it to me ?
Any help greatly appreciated.

03-24-2003, 04:28 AM
This is definitely not a JavaScript question. There are applications out there that will dictate text back to the user, though most of them are installed on the user's computer like MS Word for example.

Moving thread to general web building.

03-24-2003, 06:09 AM
If this is for the visually impaired then search google for screenreader software.

03-24-2003, 06:26 AM
and there is proper CSS to accomidate for a screenreader as well i believe.
if you are talking about something like MSagent, you could check out mash (http://www.bellcraft.com/mash/),

03-24-2003, 11:05 AM
IMO MS agent is poor; bloated, and loaded with pointless show-off features. Agent is more useful for creating usability avatars; it is not useful for accessibility; IMO.

What you want this for - do you want a way of making your pages more accessible to blind users? Using correct, accessible and standards-compliant markup is the way to go - make proper use of <fieldset> and <legend>; give everything a TITLE attribute. That kind of thing. Don't bother with aural CSS .. for now ... because no screenreader actually supports it (afaik).

Most people who need a screenreader already have one; but having said that, that's probably only true in the west - because good screenreading software is very expensive. If you find a technology or plugin that can provide simple, text to speech capability for a website, please let me know. I've been looking for something like that for ages ;) Sorry ... that was your question I know ... but I've been looking for a while, and I haven't found anything yet.

The Speech SDK (http://www.microsoft.com/speech/download/sdk51/) from MS Agent could be used, but I don't know any windows scripting languages to build it into an embeddable API, and afaik no-one else has done it yet (apart from MS with their agent ... but just how valuable is a green parrot to blind users, hmm? And can you detach it from agent and script only for the speech component? No; you can't).

If you want this for your own accessibility auditing, then I recommend the Mac browser iCab - it has text-speech built in :)

http://diveintoaccessibility.org has some good tips - although written with bloggers in mind, most of its advice applies generally. You could also check out http://www.webaim.org/, and http://www.anitrapavka.com/ is an interesting read.

03-24-2003, 11:15 AM
Start -> Programs -> Accessories -> Accessibility -> Narrator

In Windows XP anyway.

03-24-2003, 11:38 AM
Thanks all for your input and thanks to WA for moving my question to this forum. I need/would like to have text reading capability to teach kids with intellectual disability to read.

So really i am setting up a pretty easy to use web site for kids to look at online books. I was hoping a text reader might be available that could read some text i stream to it ...

i guess i can always create a .au or .wav file but the flexibility to change the text and hence the audio does appeal as the text can be adjusted as the user picks up skill (plus a text reader wont have my boring voice on it!!)

Also having text linked to audio i would have like to say underline or highlight each word as it is being read or allow the user to click on a single word of the text and have it read ...

well that was the plan...
you have given me alot to look at so i will hopefully come up with a solution...

thanks again

03-24-2003, 11:42 AM
That sounds fantastic :D Given a plugin that could accept commands as easily as

Speak("Hello world");

the rest of what you want is easy. It's just finding that component. I actually started something a while ago using MS Agent, which is addressable in exactly that way. If it weren't for the bloat and platform-specificity it would be perfect. Check out http://www.brothercake.com/scripts/SpeechAgent/SpeechAgent.html but it's not very good because

- for people who don't already have the ms agent components it's a ~2MB download

- if you don't already have the components, the auto-download prompt might not happen (this might be my error)

- the whole thing doesn't always work; you sometimes have to reload the page several times before the character appears (ditto)

- it only works in Windows IE5+

Eventually I abandoned development because of these problems; but you're more than welcome to use what I started with.

Otherwise, please do post in this forum if you find a better speech component; and I'll do the same.

03-25-2003, 12:39 PM
i found this page really helpful

im gonna go with either

http://www.readplease.com/rpcompare.php :thumbsup:

each has a few features i wanted,

runs minimised (most important feature)
reads off clipboard
multiple voices ATT 'natural' hmmmmmm?
can save as wav or mp3

i checked out an example mp3 from readplease
pretty impressive..

i think the fact that the readplease dictionary is expandable and has customisable pronunciation may tip me that way..

strategy is to generate the wav as the text is loaded to the page
click a button to play the entire page..
the text will be loaded as style sheet so that if i click on a word it will underline and copy to clipboard (which should read aloud) .. well thats the theory .. will let you know how it goes..
i think it is $US50 which is at or near my limit for a peice of software..
if the trial goes to plan..

i know this is all a bit of a cop out and i probably should write the app myself but i have quite a few user end things i can do with this if it goes smoothly......


03-26-2003, 10:56 PM
Here's an alternative, if you're interested:

The MS Text-To-Speech module (SAPI 5.1, which I mentioned before) can do this ... because I've just discovered it's addressable in ECMAScript ;) This page was the source of that revelation (http://www.saraproft.lu/Atmosphere/TTS/TTStech.html) while this page at MSDN confirms it (http://www.microsoft.com/downloads/details.aspx?FamilyId=5E86EC97-40A7-453F-B0EE-6583171B4530&displaylang=en).

So all that's really needed is to find some good documentation on the ecmascript methods and properties it can use, and then I reckon I/we can write something that does these tasks. It should be relatively simple actually ... a few range selections, that kind of thing.

But ... there are two caveats

- it's strictly IE5/Windows; maybe not a problem since your kids are in a predictable environment - do you use windows and IE at your school? If so, that's not a problem

- it's an unsigned activeX control, so no way it is useful over the internet. What you'd have to do is run it in your local Intranet zone, and set all the active-x security preferences to "enable"

Anyway with those two prerequisites, and assuming you've installed the components (if you run Win XP you already have them) I made a demo :D

"-//W3C//DTD XHTML 1.0 Transitional //EN"

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">


<title>Text To Speech using the Microsoft TTS module (SAPI 5.1)</title>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />



<script type="text/javascript">

function speak()

//get textarea text
var text = '';
text = document.getElementById("typein").value;

if(text != '')

// create the ISpVoice object
VoiceObj = new ActiveXObject ("Sapi.SpVoice");

// speak the text
// the value "1" for the second parameter corresponds
// to the SVS-Flags-Async value (asynchronous speak)
VoiceObj.Speak (text,1);

// don't 'submit' the form
return false



<form action="" onsubmit="return speak()">
<input type="text" size="50" id="typein" value="" />
<input type="submit" value=" Say this " />


03-26-2003, 11:22 PM
Hey cool .. the SDK has some really good examples :)

04-01-2003, 01:58 AM
:thumbsup: :thumbsup: :thumbsup: Brothercake that is very cool...:thumbsup: :thumbsup: :thumbsup:

I just tried it now and it works really well..
well done

I need to try it on my '98 machine and the kids stuff is all IE so that is no problem.. the page was already activeX too so thats no prob either..

I have basically written the pager .. heres a breif description

The index.htm detects where it is in the file system (so it could be on a CD) and then looks for directories, these are the level libraries

It searches each level library for files and directories

a file is a thumbnail of the book cover
and the directory is the book..

(The thumbnail and book need to have the same name and the thumb needs to be an image...later i will just generate the thumb from the first page of the book which is easy)

The default level library is loaded and title thumbs displayed
The user clicks on a thumb and the book is loaded on page 1

The program will look for jpg or gif (soon avi, mpeg?) as image
and (if not avi,mpeg)

it will look for an au or wav or midi to have as a full page reader with correct phrasing (this is not the tts part)
,this is the part for kids who have no decoding problems but more language structural and phrasing problems)

It will then look for txt file (later could be html) and load this. Click on a word and it is said, this is the tts part (thanks to you brothercake!!).
This part is for kids with decoding problems

At the moment i am sorting out screen resolution and page real estate issues..

Also because i have generated the onClicks for each word i've gotta get the punctuation back in there correctly which i havnt really thought thru yet..

I feel like this project is at about the 70% done phase...
I have a good range of content all jpg or gif,

I havent done the full page reads cause my sound card is crap
so im getting a new one in next few weeks..

I will keep you posted..
Your coding looks alot more professional than mine..
It even looks DOM sorta compliant..
Hmmmmmmmmm wish mine looked like that..

Thanks for checking this out for me Brothercake
very much appreciated

when this project is done i will be happy to send you a copy..