在我的硒代码中,我需要验证颜色代码是#192856的背景。但是当我得到那个元素的CSS属性时,它给了我rgba格式的颜色。现在我需要获取十六进制值本身的值。我怎样才能做到这一点?如何将RGBA css颜色格式转换为十六进制格式
quickLinkstab.GetCssValue("background-color")
上面给出了rgba值“rgba(25,40,86,1)”的值。有什么办法可以将它转换回十六进制?或者我可以在Hex中获得价值?
我也尝试下面的代码
string colorcode = menuColor;
int argb = Int32.Parse(colorcode.Replace("#", ""), NumberStyles.HexNumber);
Color clr = Color.FromArgb(argb);
int r = Convert.ToInt16(clr.R);
int g = Convert.ToInt16(clr.G);
int b = Convert.ToInt16(clr.B);
int a = Convert.ToInt16(clr.A);
string x = string.Format("rgba({0}, {1}, {2}, {3});", r, g, b,a);
但这一个是给我价值等, “RGBA(25,40,86,0);” 。 “a”值的差异。像我的代码给我0为“一”,但cssvalue为1
我更期待对越来越十六进制数值直接或如果没有可能再转换RGBA为十六进制的解决方案。
我想'了'是不透明,它应该是'0'和'1'之间的值,所以它应该是类型'double' –
“一“是为了透明。 0 =不可见,255 =可见。如果你只有RGB,则A始终为255 https://msdn.microsoft.com/en-us/library/at1k42eh(v=vs.110).aspx –
[转换RGBA以HEX]可能的复制(HTTP ://stackoverflow.com/questions/21576092/convert-rgba-to-hex) – JeffC