转换图.颜色变成HTML的颜色值
本文关键字:HTML 颜色值 颜色 转换 | 更新日期: 2023-09-27 17:51:01
我已经问过这个问题了,但是我说错了。
我在服务器上有一个方法GetRandColor()
,它返回System.Drawing.Color
对象。
我想要的是能够在页面加载时使用此设置html属性。例如,
<html>
<body bgcolor="#GetRandColor()">
<h1>Hello world!</h1>
</body>
</html>
你不能从你的函数返回一个System.Drawing.Color
对象,因为浏览器只理解文本。因此,您应该返回颜色的字符串表示形式,可以是RGB, HEX格式或其他格式。
你的方法应该是这样的:
protected string GetRandColor()
{
return ColorTranslator.ToHtml(Color.Red);
}
你可以这样设置你的表单的背景:
<body style="background-color:<%=GetRandColor()%>;">
如果GetRandColor()在一个静态类中,这应该可以工作:
<body bgcolor="<%= System.Drawing.ColorTranslator.ToHtml(ClassName.GetRandColor()) %>">
您可能需要在类名之前添加类的命名空间
你可以在内联表达式的帮助下做到这一点: .NET框架中的内联表达式
显示表达式 (<%= ... %>)
bgcolor="<%= System.Drawing.ColorTranslator.ToHtml(GetRandColor()) %>"
您可以使用ColorTranslator转换绘图。Color到HTML的颜色值。例如,
System.Drawing.Color c = System.Drawing.ColorTranslator.FromHtml("#F5F7F8");
String strHtmlColor = System.Drawing.ColorTranslator.ToHtml(c);
这个链接也会帮助你:msdn.microsoft.com/en-us/library/system.drawing.colortranslator.fromhtml.aspx
public string GetRandHtmlColor(){
System.Drawing.Color c = GetRandColor();
return System.Drawing.ColorTranslator.ToHtml(c);
}