WPF Image控件 Source: Byte[] ,BitmapImage 相互转换
2020-12-13 16:29
标签:des style blog io color ar os sp 文件 文件转为byte[] byte[]转换为BitmapImage: BitmapImage转换为byte[]: WPF Image控件 Source: Byte[] ,BitmapImage 相互转换 标签:des style blog io color ar os sp 文件 原文地址:http://www.cnblogs.com/vipsoft/p/4083825.htmlFileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);
byte[] desBytes = new byte[fs.Length];
fs.Read(desBytes, 0, desBytes.Length);
fs.Close();
public static BitmapImage ByteArrayToBitmapImage(byte[] byteArray)
{
BitmapImage bmp = null;
try
{
bmp = new BitmapImage();
bmp.BeginInit();
bmp.StreamSource = new MemoryStream(byteArray);
bmp.EndInit();
}
catch
{
bmp = null;
}
return bmp;
}
public static byte[] BitmapImageToByteArray(BitmapImage bmp)
{
byte[] byteArray = null;
try
{
Stream sMarket = bmp.StreamSource;
if (sMarket != null && sMarket.Length > 0)
{
//很重要,因为Position经常位于Stream的末尾,导致下面读取到的长度为0。
sMarket.Position = 0;
using (BinaryReader br = new BinaryReader(sMarket))
{
byteArray = br.ReadBytes((int)sMarket.Length);
}
}
}
catch
{
//other exception handling
}
return byteArray;
}
WriteableBitmap wb = new WriteableBitmap(img.Source as BitmapSource);//将Image对象转换为WriteableBitmap
byte[] b = Convert.FromBase64String(GetBase64Image(wb));//得到byte数组
下一篇:python常用模块
文章标题:WPF Image控件 Source: Byte[] ,BitmapImage 相互转换
文章链接:http://soscw.com/essay/36204.html