25

短くシンプルにしておきます。

アニメーション画像とは別に静的GIF画像を区別する方法はありますか?私はC#を使用しています。

ありがとう

4

2 に答える 2

27

これは、GIFアニメーションのフレーム数を決定する方法に関する記事です。

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.");

そして、私はあなたがそれを1と比較することができると思います。

于 2010-05-17T11:46:58.340 に答える
5

System.Drawing.ImageAnimator.CanAnimateは、.NET1.1以降で使用できます。

MSDNから:

指定された画像に時間ベースのフレームが含まれているかどうかを示すブール値を返します。

例:

using (Image image = Image.FromFile("somefile.gif"))
{
    if (ImageAnimator.CanAnimate(image))
    {
        // GIF is animated
    }
    else
    {
        // GIF is not animated
    }
}
于 2016-03-17T14:53:59.990 に答える