我正在尝试将小数像素数组转换为位图,存储它,然后将其检索并显示为网络的基本64图像。为了创建我的位图,我逐步完成像素数组,并简单地在位图中设置像素。
var bmp = new Bitmap(320, 240);
for (var i = 0; i < pixelArray.Length - 1; i++)
{
for (var j = 0; j < pixelArray.Length - 1; j++)
{
var color = Color.FromArgb(int.Parse(pixelArray[i][j]));
bmp.SetPixel(j, i, color);
}
}
var img = Images.ConvertImageToByteArray(bmp);
然后我将图像作为varbinary(MAX)
存储在SQL中。
当我检索图像时,我尝试将其转换为基本64字符串,以使用以下内容显示在网站上:
var imageString = Convert.ToBase64String(image);
var img= string.Format("data:image/bmp;base64,{0}", imageString);
return img;
但是当我尝试显示图像时,它只是空白。我无法弄清楚我在这里做错了什么。
编辑:以下是我在页面上显示的方式
<img alt="Face Capture" height="240" width="320" src="@Model.ImageAsBase64" />
Model.ImageAsBase64
是返回的img
。