如何将ImageSource转换为byte []?

时间:2011-05-04 13:01:20

标签: silverlight

我尝试在谷歌中找到如何将imageSource转换为byte [] - 我找不到为什么要这样做。

有人可以帮忙吗?

感谢。

1 个答案:

答案 0 :(得分:2)

如果您有BitmapSource,则可以使用BitmapSource.CopyPixels Method (Array, Int32, Int32)

或者altley,例如,如果您需要ARGB字节序列:

var bmp = new WriteableBitmap((BitmapSource)source);
byte[] pixels = bmp.Pixels.SelectMany(p => new byte[]
{
    (byte)p,
    (byte)(p >> 8),
    (byte)(p >> 16),
    (byte)(p >> 24)
}).ToArray();