Prawn is pretty neat, but what I'd really like to see is HTML to PDF in pure Ruby. I had to use a Java library wrapped in a Ruby module to do this. Complicates my server configuration (needs the JVM) more than I'd like.
In order for this to happen, what we really need is a solid box model. Since we don't have that yet, it's a very hard problem. If someone wanted to pay me to work on it full time for a year, I could get it built.
But failing that, we'll have to wait a good deal of time for this, unless someone else finds a large chunk of dedicated time for it.
Until then, Flying Saucer is the way to go if you can't afford PrinceXML price tag.
(depends upon your needs, of course)
Only, I needed to parse plain HTML (not just XHTML) so I'm using TagSoup as the replacement parser: http://home.ccil.org/~cowan/XML/tagsoup/
This combination is awesome.