繁体   English   中英

字节数组到图像C#

[英]Byte array to Image C#

我有一个简单的字节串(矩阵的元素逐行读取)。 我希望将其绘制在c#中的图像中。 有没有简单的方法可以做到这一点。

在互联网上,我发现了字节数组到图像的转换,但是我认为对此字节字符串应该具有某种格式,因为我没有看到宽度和高度的任何确定。

有什么建议么?

假设你的字节字符串包含颜色数据上,以在支持的一个图像的每个像素的像素格式 ,您可以创建一个Bitmap使用此构造特定大小: Bitmap(int width, int height

然后使用Bitmap.LockBits(Rectangle, ImageLockMode, PixelFormat)将位图锁定到系统内存中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; }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM