2009-02-12 16 views
12

Ich bin ein Anfänger in C#. Ich würde gerne wissen, ob es eine Möglichkeit gibt, auf verschiedene Frames innerhalb einer GIF-Animation mit C# zuzugreifen. Ich bin 2008Zugriff auf GIF-Frames mit C#

Antwort

8

ein bisschen googeln Visual Studio: editing animated gif's in c#

Sie das animierte Gif mit Image.GetFrameCount() und SelectActiveFrame() lesen kann.

+0

Diese Antwort enthält auch Informationen über die Zeitinformationen immer in zusätzlichen, um den Rahmen – John

19

Versuchen Sie folgendes:

Image gifImg = Image.FromFile(pathToGifFile); 
FrameDimension dimension = new FrameDimension(gifImg.FrameDimensionsList[0]); 
// Number of frames 
int frameCount = gifImg.GetFrameCount(dimension); 
// Return an Image at a certain index 
gifImg.SelectActiveFrame(dimension, index); 
+1

Welcher Teil von .net sind Bild und FrameDimension gefunden? –

+2

@ aj.toulan Für Image, System.Drawing; für FrameDimension, System.Drawing.Imaging. – soulblazer

+0

Um nur zu sagen, wenn Sie Visual Studio verwenden, platzieren Sie den Cursor auf den Typ, der nicht den Namespace enthalten hat und drücken Sie "Strg +". Wenn Sie den richtigen Namespace bereits als Referenz in Ihrem Projekt hinzugefügt haben, erhalten Sie im Drop-down-Menü eine Option zum automatischen Hinzufügen der Namespace-Dekoration. – sp10acnFIFO