C#名称中的颜色值
我需要得到一种颜色的RGB值,给定它的名称为C#。我正在尝试使用预定义的KnownColors枚举,但不知道如何获取值 有什么帮助吗 谢谢。使用: 然后是RGB值的C#名称中的颜色值,c#,enums,colors,C#,Enums,Colors,我需要得到一种颜色的RGB值,给定它的名称为C#。我正在尝试使用预定义的KnownColors枚举,但不知道如何获取值 有什么帮助吗 谢谢。使用: 然后是RGB值的blue.R、blue.G和blue.B 或者,如果您只需要RGB颜色的int值,可以执行以下操作: int blueRgb = Color.FromKnownColor(KnownColor.Blue).ToArgb(); 使用然后使用Color.R,Color.G和Color.B,访问RGB值颜色类有一些有趣的静态方法: Co
blue.R
、blue.G
和blue.B
或者,如果您只需要RGB颜色的
int
值,可以执行以下操作:
int blueRgb = Color.FromKnownColor(KnownColor.Blue).ToArgb();
使用然后使用
Color.R
,Color.G
和Color.B
,访问RGB值颜色类有一些有趣的静态方法:
Color.FromName ("Red").ToArgb()
除此之外,还有一些属性,如:
var c = Color.FromName ("Red"); // Or use Color.FromKnownColor (KnownColor.Red)
Console.WriteLine (String.Format ("RGB: {0} {1} {2}", c.R, c.G, c.B);
检查此项
在此处输入代码
您可以执行的操作
int r = Color.FromName("Purple").ToArgb();
//Or
int r1 = Color.FromKnownColor(KnownColor.Purple).ToArgb();
Color.FromName和Color.fromKnown颜色将返回Color对象,如果需要,它具有
红色
、绿色
和蓝色
组件的属性。Toargb返回32位int,而不是他想要的。编辑:我不这么认为。问题是我把颜色的名字写在一个字母里了string@baruch当前位置在这种情况下,弗雷德里克·盖瑟斯的回答很中肯:)FromKnownColor更有意义,因为他说这就是他正在使用的。
Color c = (Color)TypeDescriptor.GetConverter(typeof(Color)).ConvertFromString("Red");
Color clr = FromKnownColor(System.Drawing.KnownColor.Blue);
string.Format("R:{0}, G:{1}, B:{2}" clr.R, clr.G, clr.B);
int r = Color.FromName("Purple").ToArgb();
//Or
int r1 = Color.FromKnownColor(KnownColor.Purple).ToArgb();