using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//调用示例
SaveFrame(@"F:\mzwu.com\test.gif");
}
/// <summary>
/// 分解gif各帧并保存
/// </summary>
/// <param name="file">gif路径</param>
private void SaveFrame(string file)
{
using (Image image = Image.FromFile(file))
{
FrameDimension fd = new FrameDimension(image.FrameDimensionsList[0]);
int framecount = image.GetFrameCount(fd);
string path = file.Replace(Path.GetExtension(file), "");
//创建文件夹
Directory.CreateDirectory(path);
//保存各帧
for (int i = 0; i < framecount; i++)
{
image.SelectActiveFrame(fd, i);
image.Save(Path.Combine(path, "frame_" + i + ".jpg"), ImageFormat.Jpeg);
}
}
}
}
}
评论(0)
暂无评论。