How to make speech synthesis read numbers like “1325.25” as “one three two five point two five”?

My OS is Ubuntu 15.10. In Libreoffice calc, I am using an extension “Read Text” to read numbers using Festival speech synthesis.

How to set up it to read numbers like “1325.25” as “one three two five point two five” instead of one thousand three hundred twenty-five point two five?. Is there any setting for that?

( I tried converting the number to text, but then the point is read as ‘dot’.)

I do not think this can be configured on the level of LibO.
The extension ‘Read Text’ should also only pass strings to the external application used to generate the words to speak and passing them again to the sound generator using the system’s voices…
Did you already try to convert your numbers to read into strings consisting of isolated characters and spaces between like in “1 2 3 . 4 5”? If this works for you with a hand-typed example I can supply you with a custom function in BASIC doing the conversion.

For the moment I only can supply a function for protracted concatenation from my personal toolbox and a Calc document demonstrating how it can be used for the purpose if a few helper cells per number are dedicated.

@Lupp Yes, please. That would be a great help. When I tried, the sound of each digit overlapped each other and so I add “wait” which made each of them sound as different numbers.

@Lupp Thankyou. Your idea works fine. Converting the number to text and replacing “.” by the word “point” does the job.

sub read_digits

'install extension - “read text” first

if ThisComponent.getCurrentSelection().value>=100 then


position= InStr(MyString,".")

length= Len(MyString)

digited=Left(MyString,position-1) & “point” & Right(MyString,Length-position)


End if

End sub