在使用CxImage显示gif文件时,发现CxImage解一个299帧的gif动画,在debug的时候花了好几时秒,
CxImage在处理gif时效率太低了。
在网上搜索了一些,支持比较强的图像库:
imageMagick--非常强大,在MFC中不好用,要把图片显示到窗口非常麻烦,至少目前没有发现在Windows窗口中显示的方法,还得加一堆乱七八糟的dll。
还是DevIL比较好使一点,感觉DevIL封装的不是很好,全局变量太多,多线程操作极不安全。用C++在封装一下,可能就好使一点。
附:
DevIL Feature
List
    
        
            | Supports loading of:  
                .bmp .cut .dcx .dds .ico .gif .jpg .lbm .lif .mdl .pcd .pcx .pic .png .pnm .psd .psp .raw .sgi .tga .tif .wal .act .pal .hdr Doom
                graphics  | Supports saving of:  
                .bmp .dds .jpg .pcx .png .pnm .raw .sgi .tga .tif .pal .hdr  | 
    
Library Features 
    - Portable,
    supports Windows, Mac OS X and *nix. 
- OpenGL-style
    syntax. 
- Use of
    image names instead of ugly pointers. 
- Loading
    from files, file streams or memory "lumps". 
- Direct
    access to data through ilGetData() and ilSetData(). 
- Support
    for luminance, rgb(a), bgr(a) and colour-indexed images. 
- Support
    for 3 different numbers of bits per channel. 
- Conversion
    between all formats and datatypes (including palettes). 
- User-defined
    automatic conversions if desired when loading images. 
- Automatic
    conversion when saving images if needed. 
- Automatic
    conversion of colour-indexed images to truecolour images if desired. 
- Controllable
    compression when saving. 
- Maintains
    a state stack that can be pushed and popped. 
- Full
    support for 3d texture volumes (3d images). 
- Validation
    of images. 
- Support
    for layers. 
- Support
    for mipmaps. 
- Support
    for animations. 
- User-specified
    clear colour. 
- Can load
    a default image if loading fails. 
- User-specified
    hints. 
- Use of
    key colours. 
- Support
    for overlaying an image on top of another. 
- Allows
    the user to specify their own loading and saving callbacks, even
    overriding the default ones. 
- Support
    for user-specified read and write functions. 
- Delphi support. 
- Visual
    Basic support. 
- Linux
    support. 
- Can pick
    and choose which features will be used to create smaller dlls. 
- Choose
    whether to use the Intel Jpeg Library or libjpeg. 
- A whole
    host of effects and filters to apply to images, such as embossing and edge
    detection. 
- Images
    can be resized or even be put on a larger background (enlarged canvas). 
- OpenGL,
    Allegro, Windows GDI and DirectX API support.