У меня есть служба wcf, которая возвращает bmp в байтах [].Однако элемент управления изображения Silverlight не поддерживает отображение bmp, поэтому мне нужно преобразовать bmp byte [] в png или jpg byte [].Есть ли библиотека, которая делает это преобразование?Или каким-либо другим способом отображения байта bmp [] на клиенте silverlight?
Спасибо!
Update1
Чтобы выполнить преобразование Iсделал бы что-то подобное в .NET
private byte[] ConvertBmpToJpeg(byte[] bmp)
{
using (System.Drawing.Image image = System.Drawing.Image.FromStream(new MemoryStream(bmp)))
{
MemoryStream ms = new MemoryStream();
image.Save(ms, ImageFormat.Jpeg);
return ms.ToArray();
}
}
Поскольку System.Drawing недоступен в Silverlight, как мне добиться того, что код делает выше в Silverlight?
Ответ с использованием библиотеки, упомянутой dj kraze ниже-
ExtendedImage img = new ExtendedImage();
var bd = new BmpDecoder();
var je = new JpegEncoder();
bd.Decode(img, new MemoryStream(bitmapBytes));
MemoryStream ms = new MemoryStream();
je.Encode(img, ms);
BitmapImage bi = new BitmapImage();
bi.SetSource(new MemoryStream(ms.ToArray()));
display_ScreenShot.Source = bi;