> > * There is no way that I know of to distinguish between a > > metafile/vector format and a raster format, except maybe to try > > loading everything as a metafile and see if something fails. > > Hmm, there are the ImageCodecFlagsSupportBitmap and > ImageCodecFlagsSupportVector bits in the ImageCodecInfo::Flags field, > is that enough?
I've seen stories that GDI+ reports that every format is a bitmap. I didn't have the opportunity to test it myself because GetImageEncoders() isn't in my GDI+ DLL. > > * The functions that enumerate GDI+'s loaders simply don't exist in > > the 1.0 version of the GDI+ DLL. > > Are you sure? The sample program from the GDI+ documentation in the > Platform SDK that lists encoders using GetImageDecodersSize() and > GetImageDecoders() works fine for me on XP. The version of the > GdiPlus.dlls I find in the WinSxS folders is 5.1.3102.2180. Unfortunately, they're not present in at least my copy of WinXP. It's why I do a TRY_LOOKUP() on GetImageEncoders and GetImageEncodersSize, and why GetEncoderClsid() has a fallback branch that uses hard-coded CLSIDs. > I really would love to be able to have the GDI+ loader as a built-in... As would I. You can definitely do it with the existing architecture, albeit a little awkwardly. The combination wouldn't have support for any new formats dynamically added to GDI+. But in all honesty, I think adding new formats is pretty uncommon and that 99% of people just have the builtin set. Thanks for working on this patch, Tor. I really appreciate it. Dom _______________________________________________ gtk-devel-list mailing list gtk-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-devel-list