出于游戏的目的,我需要使用 bitmapEncoder 及其子类通过 WPF 应用程序序列化二进制文件中的一些图片。
但是这些类在 silverlight 中不可用,所以我无法从同一个二进制文件将它们加载到浏览器中。
有人知道如何在 Silverlight 中将 byte[] 转换为 BitmapImage 吗?
谢谢,
风筝
出于游戏的目的,我需要使用 bitmapEncoder 及其子类通过 WPF 应用程序序列化二进制文件中的一些图片。
但是这些类在 silverlight 中不可用,所以我无法从同一个二进制文件将它们加载到浏览器中。
有人知道如何在 Silverlight 中将 byte[] 转换为 BitmapImage 吗?
谢谢,
风筝
尝试这样的事情:
BitmapImage GetImage( byte[] rawImageBytes )
{
BitmapImage imageSource = null;
try
{
using ( MemoryStream stream = new MemoryStream( rawImageBytes ) )
{
stream.Seek( 0, SeekOrigin.Begin );
BitmapImage b = new BitmapImage();
b.SetSource( stream );
imageSource = b;
}
}
catch ( System.Exception ex )
{
}
return imageSource;
}
用这个方法 先用
using System.IO;
using System.Windows.Media.Imaging;
然后
public Image Base64ToImage(byte[] imageBytes)
{
Image img = new Image();
using (MemoryStream ms = new MemoryStream(imageBytes, 0, imageBytes.Length))
{
BitmapImage im = new BitmapImage();
im.SetSource(ms);
img.Source = im;
}
return img;
}