2009-06-04 2 views
1

애니메이션 GIF에서 각 프레임의 thumnail 이미지를 추출하려고합니다. 다음 코드는 어떻게 할 지 모르겠지만 BitmapFrame 인스턴스의 축소판 속성은 항상 null입니다.(WPF) 멀티 프레임 이미지 (tif, gif)에서 프레임을 추출하는 방법

내가 잘못 했나요?


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); 
     } 
    } 
} 

답변

1

GIF에는 사용할 수있는 축소판이 없습니다.

MSDN Libary에서

:. 는 "기본 형식 중에 글로벌 썸네일을 지원하지 합동 Photographics 전문가 그룹 (JPEG), 태그가 지정된 이미지 파일 형식 (TIFF), 마이크로 소프트 윈도우 미디어 사진 지원 프레임 수준의 썸네일을 액세스 할 수 (너무 열심히 안하는?)을 Thumbnail property"

중 하나를 사용 TIFF를 사용하여 (이 질문 제목에 언급로)하거나 축소판을 직접 생성해야합니다