I had a frustrating experience building the invoicing module for one of our applications so I built a designer for PDF templates that can be filled with content by API calls.
You can check it out here: <a href="https://getpdfapi.com" rel="nofollow">https://getpdfapi.com</a>
Any feedback will be very much appreciated!