As my first GUI project, I have a front-end to a (currently) MS Access database, with functionality for entering and retrieving data via
DBD::ODBC. With the data, I create a PDF containing text, lines/rectangles, graphics, and barcodes. I shopped around for a decent module out of those that were available, and settled in on
PDF::API2. There are some limitations of course, and there may have even been updates since I've put this into production (it was rather active if I remember correctly), but it was able to handle what I needed, and didn't take *too* long to figure out how to use without knowing a thing about the internals of a PDF. Let me know if you go that route and get stuck at all.. I'd be happy to over-comment chunks of code that are accomplishing something similar to what you are doing.
-=rev=-