2016-04-17 105 views
1

ConsoleColor.Red代碼會給你紅色的權利。代碼(ConsoleColor)3746會給你另一種顏色。但是這個數字是多少(rgb,十六進制),如何將其轉換爲rgb值,反之亦然。什麼是控制檯顏色值

+0

看這裏:http://www.rapidtables.com/web/color/RGB_Color.htm – Fruchtzwerg

+0

https://msdn.microsoft.com/en-us/library/system.consolecolor(v=vs.110) .aspx它被描述爲一系列顏色的枚舉。因此,並不要求可枚舉值以任何方式代表實際顏色內容(儘管這意味着有一個列表可以將它們轉換爲mscorlib.dll中的某個位置)。嘗試使用不同的數字進行試驗,如果順序值產生極其不同的顏色,那麼它可能使用查找列表。 – PeteB

回答

5

首先,讓我們來看看顏色

var colors = Enum.GetValues(typeof(ConsoleColor)).Cast<ConsoleColor>(); 

foreach (var color in colors) 
{ 
    Console.BackgroundColor = color; 
    Console.WriteLine(color); 
} 

Console Colors

的控制檯顏色的世界是4位中,分別爲紅色,綠色和藍色,1強度,雙打的飽和給定的顏色(灰色/白色除外)。這給出了15種可能的不同顏色。相應的十六進制是0,每個紅,綠,藍80和FF:

Name   R G B 
------------------------- 
Black  00 00 00 
DarkBlue  00 00 80 
DarkGreen 00 80 00 
DarkCyan  00 80 80 
DarkRed  80 00 00 
DarkMagenta 80 00 80 
DarkYellow 80 80 00 
DarkGray  80 80 80 
Blue   00 00 FF 
Green  00 FF 00 
Cyan   00 FF FF 
Red   FF 00 00 
Magenta  FF 00 FF 
Yellow  FF FF 00 
Gray   C0 C0 C0 
White  FF FF FF 

注意「灰色」是鶴立雞羣。原因是4位實際上允許16種顏色,但只有15種可以在off-on-on +強度方案中唯一編碼。