2016-09-21 11 views

답변

1

좋아, 내가 해결 다음과 같은 방법으로 내 문제 : 또한

private async Task<byte[]> EncodeJpeg(WriteableBitmap bmp) 
{ 
    SoftwareBitmap soft = SoftwareBitmap.CreateCopyFromBuffer(bmp.PixelBuffer, BitmapPixelFormat.Bgra8, bmp.PixelWidth, bmp.PixelHeight); 
    byte[] array = null; 

    using (var ms = new InMemoryRandomAccessStream()) 
    { 
     BitmapEncoder encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.JpegEncoderId, ms); 
     encoder.SetSoftwareBitmap(soft); 

     try 
     { 
      await encoder.FlushAsync(); 
     } 
     catch { } 

     array = new byte[ms.Size]; 
     await ms.ReadAsync(array.AsBuffer(), (uint)ms.Size, InputStreamOptions.None); 
    } 

    return array; 
} 

, 당신은 최선의 구현이있는 경우 ... ;-)