主页 / 库函数目录 / 颜色 / 颜色表示
设置绘图色有以下几种办法:
1. 用十六进制颜色码的颜色表示,形式为:
(注:以#开头的十六进制颜色码是通用表达形式,在 C/C++ 中需要以 0x 开头的十六进制数来代替)
| 颜色类型 | 十六进制颜色码 | 在 ege 对应的十六进制数值 |
| RGB 颜色 | #RGB | 0xFFRRGGBB |
| RGB 颜色 | #RRGGBB | 0xFFRRGGBB |
| ARGB 颜色 | #AARRGGBB | 0xAARRGGBB |
| 颜色 | 十六进制数值 | 说明 |
| RGB | 0xFFRRGGBB | RR = 红,GG = 绿,BB = 蓝 |
| ARGB | 0xAARRGGBB | AA = 透明度,RR = 红,GG = 绿,BB = 蓝 |
如果一些绘图函数使用的是ARGB颜色,则透明度不能为0,否则看不到绘制图形。
2. 用 EGERGB(), EGEARGB() 宏合成颜色。
| 宏 | 对应的十六进制形式 | 说明 |
| EGERGB(RR, GG, BB) | 0xFFRRGGBB | RR = 红,GG = 绿,BB = 蓝 |
| EGEARGB(AA, RR, GG, BB) | 0xAARRGGBB | AA = 透明度,RR = 红,GG = 绿,BB = 蓝 |
3. 用 hsl2rgb、hsv2rgb 转换其他色彩模型到 RGB 颜色。详见 hsl2rgb、hsv2rgb。
4. 用预定义颜色,如下:
20.08 及之前的版本
| 常量 | 值 | 颜色 | 常量 | 值 | 颜色 |
| BLACK | EGERGB(0x00, 0x00, 0x00) | 黑 |
DARKGRAY | EGERGB(0x54, 0x54, 0x54) | 深灰 |
| BLUE | EGERGB(0x00, 0x00, 0xA8) | 蓝 |
LIGHTBLUE | EGERGB(0x54, 0x54, 0xFC) | 亮蓝 |
| GREEN | EGERGB(0x00, 0xA8 ,0x00) | 绿 |
LIGHTGREEN | EGERGB(0x54, 0xFC, 0x54) | 亮绿 |
| CYAN | EGERGB(0x00, 0xA8, 0xA8) | 青 |
LIGHTCYAN | EGERGB(0x54, 0xFC, 0xFC) | 亮青 |
| RED | EGERGB(0xA8, 0x00, 0x00) | 红 |
LIGHTRED | EGERGB(0xFC, 0x54, 0x54) | 亮红 |
| MAGENTA | EGERGB(0xA8, 0x00, 0xA8) | 紫 |
LIGHTMAGENTA | EGERGB(0xFC, 0x54, 0xFC) | 亮紫 |
| BROWN | EGERGB(0xA8, 0xA8, 0x00) | 棕 |
YELLOW | EGERGB(0xFC, 0xFC, 0x54) | 黄 |
| LIGHTGRAY | EGERGB(0xA8, 0xA8, 0xA8) | 浅灰 |
WHITE | EGERGB(0xFC, 0xFC, 0xFC) | 白 |
ege 24.04 版本
| 常量 | 值 | 颜色 |
| ALICEBLUE | EGERGB(0xF0, 0xF8, 0xFF) | |
| ANTIQUEWHITE | EGERGB(0xFA, 0xEB, 0xD7) | |
| AQUA | EGERGB(0x00, 0xFF, 0xFF) | |
| AQUAMARINE | EGERGB(0x7F, 0xFF, 0xD4) | |
| AZURE | EGERGB(0xF0, 0xFF, 0xFF) | |
| BEIGE | EGERGB(0xF5, 0xF5, 0xDC) | |
| BEIGE | EGERGB(0xF5, 0xF5, 0xDC) | |
| BISQUE | EGERGB(0xFF, 0xE4, 0xC4) | |
| BLACK | EGERGB(0x00, 0x00, 0x00) | |
| BLANCHEDALMOND | EGERGB(0xFF, 0xEB, 0xCD) | |
| BLUE | EGERGB(0x00, 0x00, 0xFF) | |
| BLUEVIOLET | EGERGB(0x8A, 0x2B, 0xE2) | |
| BROWN | EGERGB(0xA5, 0x2A, 0x2A) | |
| BURLYWOOD | EGERGB(0xDE, 0xB8, 0x87) | |
| CADETBLUE | EGERGB(0x5F, 0x9E, 0xA0) | |
| CHARTREUSE | EGERGB(0x7F, 0xFF, 0x00) | |
| CHOCOLATE | EGERGB(0xD2, 0x69, 0x1E) | |
| CORAL | EGERGB(0xFF, 0x7F, 0x50) | |
| CORNFLOWERBLUE | EGERGB(0x64, 0x95, 0xED) | |
| CORNSILK | EGERGB(0xFF, 0xF8, 0xDC) | |
| CRIMSON | EGERGB(0xDC, 0x14, 0x3C) | |
| CYAN | EGERGB(0x00, 0xFF, 0xFF) | |
| DARKBLUE | EGERGB(0x00, 0x00, 0x8B) | |
| DARKCYAN | EGERGB(0x00, 0x8B, 0x8B) | |
| DARKGOLDENROD | EGERGB(0xB8, 0x86, 0x0B) | |
| DARKGRAY | EGERGB(0xA9, 0xA9, 0xA9) | |
| DARKGREEN | EGERGB(0x00, 0x64, 0x00) | |
| DARKKHAKI | EGERGB(0xBD, 0xB7, 0x6B) | |
| DARKMAGENTA | EGERGB(0x8B, 0x00, 0x8B) | |
| DARKOLIVEGREEN | EGERGB(0x55, 0x6B, 0x2F) | |
| DARKORANGE | EGERGB(0xFF, 0x8C, 0x00) | |
| DARKORCHID | EGERGB(0x99, 0x32, 0xCC) | |
| DARKRED | EGERGB(0x8B, 0x00, 0x00) | |
| DARKSALMON | EGERGB(0xE9, 0x96, 0x7A) | |
| DARKSEAGREEN | EGERGB(0x8F, 0xBC, 0x8F) | |
| DARKSLATEBLUE | EGERGB(0x48, 0x3D, 0x8B) | |
| DARKSLATEGRAY | EGERGB(0x2F, 0x4F, 0x4F) | |
| DARKTURQUOISE | EGERGB(0x00, 0xCE, 0xD1) | |
| DARKVIOLET | EGERGB(0x94, 0x00, 0xD3) | |
| DEEPPINK | EGERGB(0xFF, 0x14, 0x93) | |
| DEEPSKYBLUE | EGERGB(0x00, 0xBF, 0xFF) | |
| DIMGRAY | EGERGB(0x69, 0x69, 0x69) | |
| DODGERBLUE | EGERGB(0x1E, 0x90, 0xFF) | |
| FIREBRICK | EGERGB(0xB2, 0x22, 0x22) | |
| FLORALWHITE | EGERGB(0xFF, 0xFA, 0xF0) | |
| FORESTGREEN | EGERGB(0x22, 0x8B, 0x22) | |
| FUCHSIA | EGERGB(0xFF, 0x00, 0xFF) | |
| GAINSBORO | EGERGB(0xDC, 0xDC, 0xDC) | |
| GHOSTWHITE | EGERGB(0xF8, 0xF8, 0xFF) | |
| GOLD | EGERGB(0xFF, 0xD7, 0x00) | |
| GOLDENROD | EGERGB(0xDA, 0xA5, 0x20) | |
| GRAY | EGERGB(0x80, 0x80, 0x80) | |
| GREEN | EGERGB(0x00, 0x80, 0x00) | |
| GREENYELLOW | EGERGB(0xAD, 0xFF, 0x2F) | |
| HONEYDEW | EGERGB(0xF0, 0xFF, 0xF0) | |
| HOTPINK | EGERGB(0xFF, 0x69, 0xB4) | |
| INDIANRED | EGERGB(0xCD, 0x5C, 0x5C) | |
| INDIGO | EGERGB(0x4B, 0x00, 0x82) | |
| IVORY | EGERGB(0xFF, 0xFF, 0xF0) | |
| KHAKI | EGERGB(0xF0, 0xE6, 0x8C) | |
| LAVENDER | EGERGB(0xE6, 0xE6, 0xFA) | |
| LAVENDERBLUSH | EGERGB(0xFF, 0xF0, 0xF5) | |
| LAWNGREEN | EGERGB(0x7C, 0xFC, 0x00) | |
| LEMONCHIFFON | EGERGB(0xFF, 0xFA, 0xCD) | |
| LIGHTBLUE | EGERGB(0xAD, 0xD8, 0xE6) | |
| LIGHTCORAL | EGERGB(0xF0, 0x80, 0x80) | |
| LIGHTCYAN | EGERGB(0xE0, 0xFF, 0xFF) | |
| LIGHTGOLDENRODYELLOW | EGERGB(0xFA, 0xFA, 0xD2) | |
| LIGHTGRAY | EGERGB(0xD3, 0xD3, 0xD3) | |
| LIGHTGREEN | EGERGB(0x90, 0xEE, 0x90) | |
| LIGHTPINK | EGERGB(0xFF, 0xB6, 0xC1) | |
| LIGHTSALMON | EGERGB(0xFF, 0xA0, 0x7A) | |
| LIGHTSEAGREEN | EGERGB(0x20, 0xB2, 0xAA) | |
| LIGHTSKYBLUE | EGERGB(0x87, 0xCE, 0xFA) | |
| LIGHTSLATEGRAY | EGERGB(0x77, 0x88, 0x99) | |
| LIGHTSTEELBLUE | EGERGB(0xB0, 0xC4, 0xDE) | |
| LIGHTYELLOW | EGERGB(0xFF, 0xFF, 0xE0) | |
| LIGHTRED | EGERGB(0xFC, 0x54, 0x54) | |
| LIGHTMAGENTA | EGERGB(0xFC, 0x54, 0xFC) | |
| LIME | EGERGB(0x00, 0xFF, 0x00) | |
| LIMEGREEN | EGERGB(0x32, 0xCD, 0x32) | |
| LINEN | EGERGB(0xFA, 0xF0, 0xE6) | |
| MAGENTA | EGERGB(0xFF, 0x00, 0xFF) | |
| MAROON | EGERGB(0x80, 0x00, 0x00) | |
| MEDIUMAQUAMARINE | EGERGB(0x66, 0xCD, 0xAA) | |
| MEDIUMBLUE | EGERGB(0x00, 0x00, 0xCD) | |
| MEDIUMORCHID | EGERGB(0xBA, 0x55, 0xD3) | |
| MEDIUMPURPLE | EGERGB(0x93, 0x70, 0xDB) | |
| MEDIUMSEAGREEN | EGERGB(0x3C, 0xB3, 0x71) | |
| MEDIUMSLATEBLUE | EGERGB(0x7B, 0x68, 0xEE) | |
| MEDIUMSPRINGGREEN | EGERGB(0x00, 0xFA, 0x9A) | |
| MEDIUMTURQUOISE | EGERGB(0x48, 0xD1, 0xCC) | |
| MEDIUMVIOLETRED | EGERGB(0xC7, 0x15, 0x85) | |
| MIDNIGHTBLUE | EGERGB(0x19, 0x19, 0x70) | |
| MINTCREAM | EGERGB(0xF5, 0xFF, 0xFA) | |
| MISTYROSE | EGERGB(0xFF, 0xE4, 0xE1) | |
| MOCCASIN | EGERGB(0xFF, 0xE4, 0xB5) | |
| NAVAJOWHITE | EGERGB(0xFF, 0xDE, 0xAD) | |
| NAVY | EGERGB(0x00, 0x00, 0x80) | |
| OLDLACE | EGERGB(0xFD, 0xF5, 0xE6) | |
| OLIVE | EGERGB(0x80, 0x80, 0x00) | |
| OLIVEDRAB | EGERGB(0x6B, 0x8E, 0x23) | |
| ORANGE | EGERGB(0xFF, 0xA5, 0x00) | |
| ORANGERED | EGERGB(0xFF, 0x45, 0x00) | |
| ORCHID | EGERGB(0xDA, 0x70, 0xD6) | |
| PALEGOLDENROD | EGERGB(0xEE, 0xE8, 0xAA) | |
| PALEGREEN | EGERGB(0x98, 0xFB, 0x98) | |
| PALETURQUOISE | EGERGB(0xAF, 0xEE, 0xEE) | |
| PALEVIOLETRED | EGERGB(0xDB, 0x70, 0x93) | |
| PAPAYAWHIP | EGERGB(0xFF, 0xEF, 0xD5) | |
| PEACHPUFF | EGERGB(0xFF, 0xDA, 0xB9) | |
| PERU | EGERGB(0xCD, 0x85, 0x3F) | |
| PINK | EGERGB(0xFF, 0xC0, 0xCB) | |
| PLUM | EGERGB(0xDD, 0xA0, 0xDD) | |
| POWDERBLUE | EGERGB(0xB0, 0xE0, 0xE6) | |
| PURPLE | EGERGB(0x80, 0x00, 0x80) | |
| RED | EGERGB(0xFF, 0x00, 0x00) | |
| ROSYBROWN | EGERGB(0xBC, 0x8F, 0x8F) | |
| ROYALBLUE | EGERGB(0x41, 0x69, 0xE1) | |
| SADDLEBROWN | EGERGB(0x8B, 0x45, 0x13) | |
| SALMON | EGERGB(0xFA, 0x80, 0x72) | |
| SANDYBROWN | EGERGB(0xF4, 0xA4, 0x60) | |
| SEAGREEN | EGERGB(0x2E, 0x8B, 0x57) | |
| SEASHELL | EGERGB(0xFF, 0xF5, 0xEE) | |
| SIENNA | EGERGB(0xA0, 0x52, 0x2D) | |
| SILVER | EGERGB(0xC0, 0xC0, 0xC0) | |
| SKYBLUE | EGERGB(0x87, 0xCE, 0xEB) | |
| SLATEBLUE | EGERGB(0x6A, 0x5A, 0xCD) | |
| SLATEGRAY | EGERGB(0x70, 0x80, 0x90) | |
| SNOW | EGERGB(0xFF, 0xFA, 0xFA) | |
| SPRINGGREEN | EGERGB(0x00, 0xFF, 0x7F) | |
| STEELBLUE | EGERGB(0x46, 0x82, 0xB4) | |
| TAN | EGERGB(0xD2, 0xB4, 0x8C) | |
| TEAL | EGERGB(0x00, 0x80, 0x80) | |
| THISTLE | EGERGB(0xD8, 0xBF, 0xD8) | |
| TOMATO | EGERGB(0xFF, 0x63, 0x47) | |
| TURQUOISE | EGERGB(0x40, 0xE0, 0xD0) | |
| VIOLET | EGERGB(0xEE, 0x82, 0xEE) | |
| WHEAT | EGERGB(0xF5, 0xDE, 0xB3) | |
| WHITE | EGERGB(0xFF, 0xFF, 0xFF) | |
| WHITESMOKE | EGERGB(0xF5, 0xF5, 0xF5) | |
| YELLOW | EGERGB(0xFF, 0xFF, 0x00) | |
| YELLOWGREEN | EGERGB(0x9A, 0xCD, 0x32) | |
示例:
以下是部分设置前景色的方法:
setcolor(0x0000FF);
setcolor(BLUE);
setcolor(EGERGB(0, 0, 255));
setcolor(hsl2rgb(240, 1, 0.5));