This is outside my personal experience, so YMMV. I think there is a lot to be said for using vector graphics in such an endeavor. Specifically, I think SVG is starting to show signs of maturity. SVG is an XML application, so you have a broad range of tools available to handle the files, including the
SVG module. That said, how wedded are you to using
wxPerl for your GUI? While there is an add-on for rendering SVG in wx (
wxSVG), it does not seem quite as mature as wx (nor does it appear to have Perl bindings). Another approach would be to render your SVG in a browser. Some of the newer browsers include native support for SVG. This could potentially let you focus on building the SVG and let "someone else" handle the rendering.
The alternative to vector graphics is going to be some kind of rasterization (e.g., ImageMagick). In this case, wxPerl should be able to satisfy your needs, though your program will become more of a broker between external components.