图像C#的字节数组
本文关键字:字节数 数组 字节 图像 | 更新日期: 2023-09-27 18:21:25
我有一个简单的字节字符串(矩阵的元素逐行读取)。我想把它绘制在c#中的一个图像中。有什么简单的方法可以做到这一点吗。
在互联网上,我发现了字节数组到图像的转换,但我认为字节字符串应该有一定的格式,因为我没有看到任何宽度和高度的确定。
有什么建议吗?
假设您的字节字符串以支持的像素格式之一包含图像中每个像素的颜色数据,则可以使用以下构造函数创建具有特定大小的Bitmap
:Bitmap(int width, int height
。
然后使用Bitmap.LockBits(Rectangle, ImageLockMode, PixelFormat)
将位图锁定到系统内存中,并使用BitmapData.Scan0
获取位图中第一个像素数据的地址。
之后,您可以操作原始位图数据。例如,您可以使用Marshal.Copy(Byte[], Int32, IntPtr, Int32)
将字节复制到其中。
最后用Bitmap.UnlockBits(BitmapData)
解锁位图。
哇!您已经从字节数组创建了一个位图。
你试过这个代码吗:
public Bitmap ConvertBytesToImage(byte[] BytesToConvert)
{
MemoryStream ms = new MemoryStream(BytesToConvert);
try { return new Bitmap(ms); }
catch { return null; }
}