我是通过C#以编程方式创建图像,我想知道如何将此创建的图像用作div的背景。
为了更好地解释,这是一个例子:
public string BackImage()
{
System.Drawing.Image img = //generated image goes here
var ms = new MemoryStream();
img.Save(ms, ImageFormat.Jpeg);
return Convert.ToBase64String(ms.ToArray());
//should I return it in a different way?
}
这给了我可以使用的图像,现在如何将此图像设置为div的背景?
<div id="main">
</div>
我尝试使用background-image:url(data:image/jpeg;base64,@Html.Action("BackImage"))"
,但浏览器因图像而开始冻结。
有没有更简单的方法呢?
感谢。
答案 0 :(得分:1)
两种方式:
简单: 将图像保存在临时文件夹和css类或样式定义中 background-image:url('whatevertheurlis')
有点复杂: 创建IHttpHandler实现以传递生成的图像。 css / style background-image设置仅在Url部分中有所不同。
我以前做过这两件事,而且选择是基于要创造的不同图像的数量和生命周期的要求。