假设我想将颜色#FFFFFF
转换为十进制值:16777215
,或RGB(255,255,255)
转换为16777215
,我该怎么做({{1}或C#
)?
我必须将RGB / Hexdecimal颜色转换为Decimal,因为我想将颜色转换为Decimal,然后将Decimal转换为字节(VB.net
并将字节写入memoryAdress,
此网站将任何颜色转换为十进制:http://www.mathsisfun.com/hexadecimal-decimal-colors.html
(我可以将SWF文件转换为FLA文件并查看函数,但我确信有更好的方法和更简单的方法)
答案 0 :(得分:3)
您可以使用ColorTranslator
:
String knownColor = System.Drawing.ColorTranslator.ToHtml(Color.White); //returns "White" which is reversible through FromHtml()
...或
String hexColor = System.Drawing.ColorTranslator.ToHtml(Color.FromArgb(255, 100, 100, 100)); //returns the hex value
逆向:
Color myColor = System.Drawing.ColorTranslator.FromHtml("FFFFFF");
要进入Int32,只需Convert
:
Int32 iColor = Convert.ToInt32("FFFFFF");
这为您提供了即将到来的选择...只需将它们组合起来就可以在任何方向上获得所需的结果。
答案 1 :(得分:2)
Dim decValue as String = Convert.ToInt32("FFFFFF", 16)
答案 2 :(得分:2)
我会选择
int.Parse("FFFFFF", System.Globalization.NumberStyles.HexNumber)
答案 3 :(得分:0)
RGB =(R * 65536)+(G * 256)+ B,(当R为红色,G为绿色且B为蓝色时)