📅  最后修改于: 2023-12-03 15:13:52.938000             🧑  作者: Mango
在C#中,可以使用Color
结构体表示颜色。在很多情况下,我们需要对颜色进行转换,例如将颜色的RGB值转换为16进制字符串等。下面将介绍C#中常见的颜色转换方法。
Color color = Color.FromArgb(128, 255, 0, 0);
string hexString = string.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B);
// hexString = "#FF0000"
上述代码将颜色值128, 255, 0, 0(即红色)转换为16进制字符串#FF0000
。
string hexString = "#FF0000";
Color color = ColorTranslator.FromHtml(hexString);
// color = Color.FromArgb(255, 0, 0);
上述代码将16进制字符串#FF0000
转换为RGB颜色值255, 0, 0。
Color color = Color.FromArgb(128, 255, 0, 0);
float h, s, v;
Color.RGBtoHSV(color.R, color.G, color.B, out h, out s, out v);
// h = 0, s = 1, v = 1
上述代码将RGB颜色值128, 255, 0, 0转换为HSV颜色值0, 1, 1。
float h = 0;
float s = 1;
float v = 1;
Color color = ColorTools.HSVtoRGB(h, s, v);
// color = Color.FromArgb(255, 0, 0);
上述代码将HSV颜色值0, 1, 1转换为RGB颜色值255, 0, 0。
以上是常见的C#颜色转换方法,可以在应用程序中使用,为用户提供更加美观的界面。