2009-06-04 25 views
1

J'essaie d'extraire des images de thumnail de chaque image dans un gif animé. Le code suivant est comment j'essaie de le faire, mais la propriété thumbnail de l'instance BitmapFrame est toujours null.(WPF) Comment extraire des images d'images multitrames (tif, gif)

Est-ce que je fais quelque chose de mal?


GifBitmapDecoder bd1 = new GifBitmapDecoder(
new Uri(thisImage.Path), BitmapCreateOptions.None, BitmapCacheOption.Default); 
if (bd1.CheckAccess()) 
{ 
    if (bd1.Frames.Count > 1) 
    { 
     foreach (var frame in bd1.Frames) 
     { 
      BitmapSource frameThmb = frame.Thumbnail; 
      if (frameThmb != null) 
       Console.WriteLine(frameThmb.Width); 
     } 
    } 
} 

Répondre

1

Aucune miniature n'est disponible pour les GIF.

De MSDN Libary. « Aucun des formats natifs soutien vignettes Groupe mondial Joint Photographics Experts (JPEG), Tagged Image File Format (TIFF), et Microsoft Windows Media miniatures cadre de niveau support photo qui peut être consulté en utilisant la Thumbnail property"

soit utiliser TIFF (comme vous le mentionnez dans le titre de la question) ou vous devrez générer les vignettes vous (ce qui ne devrait pas être trop dur?)