I recommend you start from a series of use-cases and design your solution based on that. I have no idea what the use-cases are for PDF templating because I've never wanted to do it. Maybe there aren't any, in which case you should delete the module rather than revise it!
When I designed HTML::Template I had a single use-case firmly in mind: an HTML designer and a Perl coder need to work together to produce an application and neither knows (or even wants to know) the other's language. This use-case may be entirely inappropriate for templating PDFs. Do "PDF designers" even exist?