There are remarkably few options for reliably generating PDF documents from within an Android app.
We’ve had to do this a few times, particularly for generating invoices to be sent from apps used by delivery drivers and for output from our FormsOnMobile product. The best solution we’ve found is iText programmable PDF software.
There’s a bit of a learning curve before you’re successfully outputting nicely formatted documents, but once you’ve got the hang of it, iText provides some pretty powerful options to handle most formatting issues.
The iText license fee is a bit steep if you only have a small number of users, but the per-user rate declines sharply as you license more users so for enterprise applications it’s the best solution we’ve found.