新手做东西 困难不断啊~ 又遇到这么一个问题 用C#怎么能合成一张动态图 其实就是jpg+gif jpg做底 gif是上面的一个图标 合成的新图上gif还是动态的 不知道我描述清楚没 大家帮忙想想办法吧 谢谢啊!

解决方案 »

  1.   

    C#分解和合成Gif图像的方法2008-03-20 21:49  一个Gif图像文件,是有几个文件进行合成的,因此处理此类文件的时候,不能像Jpeg或者Bmp文件那样处理。需要把Gif文件拆分帧的形式,然后对每一帧进行处理,处理完后再合成Gif。但是对于一个Gif进行拆分,其实Image对象本身就支持,例如对于一个Gif文件拆分成Jpeg文件方式,可以按照如下的方式进行处理。    using System.Drawing.Drawing2D;    using System.Drawing.Imaging;
        Image imgGif = Image.FromFile(@"d:\test.gif");    //Create a new FrameDimension object from this image    FrameDimension ImgFrmDim = new FrameDimension( imgGif.FrameDimensionsList[0] );                //Determine the number of frames in the image    //Note that all images contain at least 1 frame,     //but an animated GIF will contain more than 1 frame.    int nFrameCount = imgGif.GetFrameCount( ImgFrmDim );
        // Save every frame into jpeg format    for( int i = 0; i < nFrameCount; i++ )    {        imgGif.SelectActiveFrame( ImgFrmDim, i );        imgGif.Save( string.Format( @"d:\Frame{0}.jpg", i ), ImageFormat.Jpeg );    }
     
      

  2.   

    …… 一楼只回答了一半啊 这只是把gif分成jpg保存了 那怎么再合成啊?合成了以后gif还会动吗?