c# silverlight windows-phone-8.1

c# - Conversión de WriteableBitmap en matriz de bytes-Windows phone 8.1-Silverlight



windows-phone-8.1 (2)

Usé este método en otro proyecto. Este fragmento pertenece a sara silva .

public static byte[] ConvertToByteArray(WriteableBitmap writeableBitmap) { using (var ms = new MemoryStream()) { writeableBitmap.SaveJpeg(ms, writeableBitmap.PixelWidth, writeableBitmap.PixelHeight, 0, 100); return ms.ToArray(); } }

documentación msdn

Encontré el siguiente código en la web para convertir WriteableBitmap en matriz de bytes, pero este código no funciona con Silverlight. ¿Puede alguien decirme qué cambios son necesarios para que funcione con Silverlight?

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

Da el siguiente mensaje de error:

''System.Windows.Media.Imaging.WriteableBitmap'' no contiene una definición para ''PixelBuffer'' y no se puede encontrar ningún método de extensión ''PixelBuffer'' que acepte un primer argumento de tipo ''System.Windows.Media.Imaging.WriteableBitmap'' (es usted ¿falta una directiva using o una referencia de ensamblado?)


prueba esto :

public static byte[] ConvertToByteArray(WriteableBitmap writeableBitmap) { using (MemoryStream ms = new MemoryStream()) { writeableBitmap.SaveJpeg(ms, writeableBitmap.PixelWidth, writeableBitmap.PixelHeight, 0, 100); return ms.ToArray(); } }