When I look into FOText class again, the word boundary analysis seems not very elegant to me. Perhaps Java's java.text.BreakIterator could do the same thing? The BreakIterator origins from the ICU project and they state that they even handle Thai correctly, which has no word separator like the space character and needs therefore a dictionary based solution.
Regards, Christian