Probably the most straightforward thing to do is to break up the text
yourself, as you want it to be split. If you have one word big enough
that it can't fit on a page without being broken, I think it's best to
leave your application in charge of the line breaking.
-be
What version of prawn are you using with that code? The latest git
version of prawn supports this just fine, because it's based on Daniel
Nelson's excellent text refactoring work. I have a feeling that the
version of prawn you're using doesn't have such great line wrapping
capability.
If I were you, I'd either try bumping prawn to a later version or git
master (if you're OK with tracking bleeding-edge code that might
change), or figure out how to manually break the lines yourself
(inserting newlines into the string you pass to Prawn).
Hope this helps,
-be