【发布时间】:2010-07-26 14:33:42
【问题描述】:
出于游戏的目的,我需要通过 WPF 应用程序使用 bitmapEncoder 及其子类将一些图片序列化为二进制文件。
但是这些类在 silverlight 中不可用,所以我无法从同一个二进制文件将它们加载到浏览器中。
有人知道如何在 Silverlight 中将 byte[] 转换为 BitmapImage 吗?
谢谢,
风筝
【问题讨论】:
标签: c# bytearray bitmapimage
出于游戏的目的,我需要通过 WPF 应用程序使用 bitmapEncoder 及其子类将一些图片序列化为二进制文件。
但是这些类在 silverlight 中不可用,所以我无法从同一个二进制文件将它们加载到浏览器中。
有人知道如何在 Silverlight 中将 byte[] 转换为 BitmapImage 吗?
谢谢,
风筝
【问题讨论】:
标签: c# bytearray 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;
}
【讨论】: