C# GIFファイルから1コマずつ画像を取得したい
いつもお世話になっております。
最近、GIFアニメを表示するプログラムを作ろうと思い
色々調べているのですが、うまく行きません
やりたいことは
・複数フレームから構成されるGIFファイルを取り込む
・ボタン押下など、好きなタイミングでコマを1つずつ表示
・もしくは、コマの最後まで再生されたら違う絵を表示したい
(複数のGIFファイルをつなげて再生したい)
・できれば、条件によって再生するアニメーションを分岐させたい
・1コマずつ表示する時間を設定したい
質問内容は
・GIFファイルから1コマずつ画像を取得する方法
・1コマずつに設定されたウェイトを取得する方法
です。
私はよく、GiamというフリーソフトでGifアニメを作ります。
あれは、ウェイトの設定をすることで1コマずつ表示する時間を設定できますが
それを取得したり設定したりすることもできるのでしょうか?
参考サイトで、GIFファイルを取り込む方法として試しに
以下のコードを参考にしてみましたが、1コマずつ表示されません・・・
Image image = Image.FromFile(filePath);
FrameDimension fd = new FrameDimension(image.FrameDimensionsList[0]);
image.SelectActiveFrame(fd, 0); //ここで1コマ目を取得したつもり
pictureBox1.Image = image;
このようにすると、何故か表示した際に全部再生されてしまいます。。。
それに、プロパティやらを見ても、ウェイトや1コマずつ取得できそうなものが見当たりません・・
調べ方が悪いのでしょうか;
分かる方がいましたら、よろしくお願いします。
<補足>
言語:C#
.Net Framework 3.5
お礼
回答ありがとうございます。