目前我正在调查在ASP.NET网络表单应用程序中显示动态图像的可能性。 例如。我们希望在网页上向最终用户显示7段显示,但在显示之前,我们需要根据数据库中的某些设置更改此图像中的一些内容,例如更改颜色或设置段的可见性,改变元素的背景颜色等。
由于我们的最终用户不具备安装Flash或Silverlight等浏览器插件的能力,因此它必须是所有最近浏览器(可能是HTML5或SVG?)的原生支持。
主要图像应该在设计时使用某种WYSIWYG编辑器创建,如Illustrator或Blend等。在运行时,我们需要操作来自C#(如果是服务器端)的图像,或者甚至是javascript(如果是客户端)。
主要问题是,您会推荐使用eny技术,还是有任何现有的框架或库来实现这一目标?可以使用SVG或HTML5(画布吗?)
轻松完成我希望任何人都可以指出我正确的方向,或提供一些提示或者可能是一个很好的教程...
答案 0 :(得分:0)
当我不得不做这样的事情时,我使用了一个新的HTTP Handler。在ProcesRequest中,您可以在Bitmap对象中加载图像并在内存中修改它。完成后,您可以将图像写入响应。
//load the main image
var bmp = new Bitmap(200, 200);
//draw here
bmp.Save(context.Response.OutputStream, ImageFormat.Png);
context.Response.ContentType = "image/png";
context.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
context.Response.Cache.SetNoStore();
拥有这样的处理程序后,您可以添加到HTML。确保没有缓存响应,因此图像非常动态。
存储和编辑主图像是一个不同的问题。