I want to add icons to buttons etc. in my applications.
This can easily be done using bitmaps (e.g., PNG images).
However these don’t scale. This is a problem when deploying an application to users who have widely varying screen sizes and DPIs.
I’ve tried using a custom ArtProvider 256x256 PNGs and dynamically scaling to 16, 20, 24, etc., pixels in proportion to the DPI (although wxPython seems to report DPI incorrectly on Linux), but the results are poor.
Ideally I’d like to be able to use SVG images and then dynamically draw them as PNGs of the appropriate size (and cache them once drawn). But I can’t see any SVG rendering class in wxPython, only SVGFileDC which outputs SVG.
Surely other wxPython users have encountered (and solved) this problem?
(By comparison, Qt allows the use of SVG images directly for icons and scales them appropriately for you.)