I'll keep it short and simple;
is there any way of telling static GIF images apart from animated ones? I'm using C#.
Thanks
Here's an article about how to determine the number of frames in a GIF animation.
Image i = Image.FromFile(Server.MapPath("AnimatedGIF.gif"));  Imaging.FrameDimension FrameDimensions =      new Imaging.FrameDimension(i.FrameDimensionsList[0]);  int frames = i.GetFrameCount(FrameDimensions);  if (frames > 1)      Response.Write("Image is an animated GIF with " + frames + " frames"); else      Response.Write("Image is not an animated GIF."); And I assume you could just compare that with 1.
System.Drawing.ImageAnimator.CanAnimate has been available since .NET 1.1.
From MSDN:
Returns a Boolean value indicating whether the specified image contains time-based frames.
Example:
using (Image image = Image.FromFile("somefile.gif"))
{
    if (ImageAnimator.CanAnimate(image))
    {
        // GIF is animated
    }
    else
    {
        // GIF is not animated
    }
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With