从生成的图像

时间:2018-05-31 07:57:29

标签: c# asp.net asp.net-mvc

我是通过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"))",但浏览器因图像而开始冻结。

有没有更简单的方法呢?

感谢。

1 个答案:

答案 0 :(得分:1)

两种方式:

简单: 将图像保存在临时文件夹和css类或样式定义中 background-image:url('whatevertheurlis')

有点复杂: 创建IHttpHandler实现以传递生成的图像。 css / style background-image设置仅在Url部分中有所不同。

我以前做过这两件事,而且选择是基于要创造的不同图像的数量和生命周期的要求。