2013-04-24 4 views
6

Windows 스토어 메트로 스타일 앱에서 C# 코드를 사용하여 WriteableBitmap 이미지를 Byte[] 배열로 변환하고 싶습니다. 'AsStream'최고의에 대한 정의를 포함하지 않는 StreamWinRt 응용 프로그램에서 WriteableBitmap 이미지를 바이트 배열로 변환하는 방법

byte[] ConvertBitmapToByteArray(WriteableBitmap bitmap) 
    { 
     using (Stream stream = bitmap.PixelBuffer.AsStream()) 
     using (MemoryStream memoryStream = new MemoryStream()) 
     { 
      stream.CopyTo(memoryStream); 
      return memoryStream.ToArray(); 
     } 
    } 

답변

8

WriteableBitmap

유형 IBufferPixelBuffer 속성을 노출 확장 메서드 과부하 'WindowsRuntimeStreamExtensions.AsStream (IRandomAccessStream)'에 'IRandomAccessStream'형식의 수신기가 필요합니다.
+0

'IBuffer'.NET으로 바이트 배열로 변환 할 수있는 Windows 런타임 인터페이스 - –

+0

@VG 확장 메서드이기 때문에'using System.Runtime.InteropServices.WindowsRuntime'을 추가해야합니다. – SepehrM

+0

Windows 범용 프로젝트에서 작동하는 유일한 대답입니다 (광범위한 검색 후). 닷넷 클래스와 네임 스페이스가 WPF 이후로 유니버설 윈도우에 8 개의 메트로 스토어를 차지하게되었습니다 ... 그래서이 답변은 금입니다! –

관련 문제