Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在浏览器中显示动态生成的bmp_C#_Asp.net - Fatal编程技术网

C# 如何在浏览器中显示动态生成的bmp

C# 如何在浏览器中显示动态生成的bmp,c#,asp.net,C#,Asp.net,在.aspx页面上,我使用System.Drawing命名空间创建bmp。完成bmp后,我将使用以下方式将其发送到浏览器: using (MemoryStream ms = new MemoryStream()) { bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); byte[] buffer = ms.GetBuffer();

在.aspx页面上,我使用System.Drawing命名空间创建bmp。完成bmp后,我将使用以下方式将其发送到浏览器:

using (MemoryStream ms = new MemoryStream())
            {
                bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
                byte[] buffer = ms.GetBuffer();
                HttpContext.Current.Response.OutputStream.Write(buffer, 0, buffer.Length);
                HttpContext.Current.Response.Flush();
            }
这似乎只是将bmp发送到呈现它的浏览器,而不是作为html页面。您无法查看源代码-它似乎只是一个位图

我希望bmp被发送到浏览器,但作为html页面主体标记的“内容”


这样做的唯一方法是将bmp保存(写入)到磁盘,然后将该文件用作图像标记的src吗?或者有没有一种方法可以将其直接呈现给浏览者,但仍然作为html页面的一部分?

最简单的解决方案是使用如下两个页面:

a、 aspx:

<img src="b.aspx" />

最简单的解决方案是使用如下两个页面:

a、 aspx:

<img src="b.aspx" />

但是在网络上使用比BMP更好的格式,例如JPEG或PNG。谢谢你的回答。有趣的是,我确实尝试过jpeg和png——但是,这是一个大图形(绘图),有很多颜色和渐变色调——还有很多非常小的几何形状(比如多边形——所以很多线以奇怪的角度在屏幕上显示为“步进”),bmp在屏幕上看起来是迄今为止最好的。但是,在网络上使用比bmp更好的格式,例如JPEG或PNG。谢谢你的回答。有趣的是,我确实尝试过jpeg和png——但是,这是一个大图形(绘图),有很多颜色和渐变色调——还有很多非常小的几何形状(比如多边形——所以很多线以奇怪的角度在屏幕上显示为“步进”),bmp在屏幕上看起来是迄今为止最好的。