Yea, i think that it greatly depends on what the PDF is. In some applications I had both mechanisms for generating PDFs. When we needed something with a bit more granular control, we'd use Prawn. I do like Prawn because it is battle tested and it doesn't have a lot of external dependencies. But you're right, the added complexities and DSL can be overwhelming to say the least.