C++ and graphics libraries
Posted on 2004-08-02
This is a general question about the most suitable graphics library for me to use in developing my application. Ideally, the library should be able to support drawing general 2D paths (and filling them when closed) ... by 'general paths', I mean shapes defined as sets of connected lines and curves.
I had originally intended to use GDI+. But now I'm concerned that GDI+ is slow in terms of performance when compared with the original GDI ... is this true (and can anyone give me an idea of how much slower we are talking here)? Also, it states in the GDI+ function documentation that supported platforms are Window Me, Windows XP, Windows 2000, and Windows NT. Does this mean that my application, if GDI+ were used, would not be able to run on Windows 98 (standard edition) and Windows 95 (even if GDI+ was to be linked in statically ... is this possible?)?
Is DirectX a possibility? I think DirectX would have alot more than I require (since I have no 3D requirement), but does it support general path definitions? Also, would a Direct X based solution be runnable on all platforms back to Windows '95.
Are there any other graphics libraries to consider? My ideal set of requirements for the library are (in order of importance):
1) Applications using it should be able to run on all Windows desktop platforms back to Windows 95
2) It should be either capable of being statically linked into the EXE or should be reasonably small as a DLL
3) It should be quick
4) It should support general path drawing and filling (as well as the usual simple 2D lines and shapes)
5) It should support alpha blending
Is there anything out there that gets close to meeting these requirements?