C#圖片處理:獲取GIF 動畫圖片中的各個幀
瀏覽量:3480
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
public class ImageHelper
{
/// <summary>
/// 獲取圖片中的各幀
/// </summary>
/// <param name="pPath">圖片路徑</param>
/// <param name="pSavePath">保存路徑</param>
public void GetFrames(string pPath, string pSavedPath)
{
Image gif = Image.FromFile(pPath);
FrameDimension fd = new FrameDimension(gif.FrameDimensionsList[0]);
//獲取幀數(gif圖片可能包含多幀,其它格式圖片一般僅一幀)
int count = gif.GetFrameCount(fd);
//以Jpeg格式保存各幀
for (int i = 0; i < count; i++)
{
gif.SelectActiveFrame(fd, i);
gif.Save(pSavedPath + "\\frame_" + i + ".jpg", ImageFormat.Jpeg);
}
}
}