无论如何在asp图像控件上显示动态生成的Bitmap?

use*_*023 10 c# asp.net controls image bitmap

在我的代码中,我使用c#和ASP.NET动态创建一个位图.比我需要在asp图像控件上显示它.无论如何都可以使用处理程序吗?

nun*_*cal 20

使用ashx处理程序更好,因为它适用于所有浏览器,您可以在客户端上缓存输出图像.

但是,如果必须这样做,可以使用<img>标记直接在线显示图像,如下所示:

<img src="data:image/gif;base64,<YOUR BASE64 DATA>" width="100" height="100"/>
Run Code Online (Sandbox Code Playgroud)

ASPX:

<img runat="server" id="imgCtrl" />
Run Code Online (Sandbox Code Playgroud)

CS:

MemoryStream ms = new MemoryStream();
bitmap.Save(ms, ImageFormat.Gif);
var base64Data = Convert.ToBase64String(ms.ToArray());
imgCtrl.Src = "data:image/gif;base64," + base64Data;
Run Code Online (Sandbox Code Playgroud)

是的,您可以直接编写位图,但压缩格式(JPEG,GIF)更适合网络.

注意:内嵌图像不适用于旧版浏览器.某些版本的IE具有最大32KB大小的限制.