如何在C#中显示GIF图像的特定帧?

我想展示一个gif图像的框架.我搜索并发现以下代码应该可以工作,但它不起作用.它正确检测帧数,但它显示的是gif的整个帧而不是指定的帧.谢谢大家.

Image[] frames = new Image[36];
Image GG = Image.FromFile(@"C:\Users\Administrator\TEST C#\TEST2frame2\chef.gif");
FrameDimension dimension = new FrameDimension(GG.FrameDimensionsList[0]);
            // Number of frames
int frameCount = GG.GetFrameCount(dimension);
label1.Text = frameCount.ToString();

            // Return an Image at a certain index
GG.SelectActiveFrame(dimension,1);
frames[1] = ((Image)GG.Clone());
pictureBox1.Image = frames[1];

解决方法

使用您自己的代码,直到调用SelectActiveFrame(),然后更改为以下行:

frames[0] = new Bitmap(GG);
pictureBox1.Image = frame[0];

这应该可以解决问题.请不要忘记处理创建的图像.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...