Color
RGBA格式的颜色使用0到1范围内的浮点数。
描述
由红、绿、蓝、阿尔法(RGBA)分量表示的一种颜色。alpha 分量通常用于透明度。一些属性(如 CanvasItem.modulate)可以接受大于 1 的值(过亮或 HDR 颜色)。
您也可以通过使用 @GDScript.ColorN 或直接使用这里定义的颜色常量,从标准化颜色名称中创建颜色。标准化颜色集是基于 X11 color names 的。
如果你想提供 0 到 255 范围内的值,你应该使用 @GDScript.Color8。
注意:在布尔上下文中,等于 Color(0, 0, 0, 1)
(不透明的黑色)的 Color 将被评估为false
。否则,一个 Color 将始终被评估为 true
。
教程
属性
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
方法
contrasted ( ) | |
get_luminance ( ) | |
gray ( ) | |
inverted ( ) | |
is_equal_approx ( Color color ) | |
linear_interpolate ( Color to, float weight ) | |
to_abgr32 ( ) | |
to_abgr64 ( ) | |
to_argb32 ( ) | |
to_argb64 ( ) | |
to_rgba32 ( ) | |
to_rgba64 ( ) |
常量
aliceblue = Color( 0.94, 0.97, 1, 1 ) —- 爱丽丝蓝。
antiquewhite = Color( 0.98, 0.92, 0.84, 1 ) —- 古色古香的白色。
aqua = Color( 0, 1, 1, 1 ) —- 水色.
aquamarine = Color( 0.5, 1, 0.83, 1 ) —- 海蓝色.
azure = Color( 0.94, 1, 1, 1 ) —- 天蓝色.
beige = Color( 0.96, 0.96, 0.86, 1 ) —- 米黄色.
bisque = Color( 1, 0.89, 0.77, 1 ) —- 橘黄色.
black = Color( 0, 0, 0, 1 ) —- 黑色.
blanchedalmond = Color( 1, 0.92, 0.8, 1 ) —- 布兰奇杏仁色。
blue = Color( 0, 0, 1, 1 ) —- 蓝色.
blueviolet = Color( 0.54, 0.17, 0.89, 1 ) —- 蓝紫色的颜色。
brown = Color( 0.65, 0.16, 0.16, 1 ) —- 棕色.
burlywood = Color( 0.87, 0.72, 0.53, 1 ) —- 癭木色。
cadetblue = Color( 0.37, 0.62, 0.63, 1 ) —- 军校学生的蓝色。
chartreuse = Color( 0.5, 1, 0, 1 ) —- 黄褐色.
chocolate = Color( 0.82, 0.41, 0.12, 1 ) —- 巧克力色.
coral = Color( 1, 0.5, 0.31, 1 ) —- 珊瑚色.
cornflower = Color( 0.39, 0.58, 0.93, 1 ) —- 矢车菊花色。
cornsilk = Color( 1, 0.97, 0.86, 1 ) —- 玉米丝色。
crimson = Color( 0.86, 0.08, 0.24, 1 ) —- 绯红的颜色。
cyan = Color( 0, 1, 1, 1 ) —- 青色。
darkblue = Color( 0, 0, 0.55, 1 ) —- 深蓝色。
darkcyan = Color( 0, 0.55, 0.55, 1 ) —- 深青色。
darkgoldenrod = Color( 0.72, 0.53, 0.04, 1 ) —- 深色菊科植物的颜色。
darkgray = Color( 0.66, 0.66, 0.66, 1 ) —- 深灰色。
darkgreen = Color( 0, 0.39, 0, 1 ) —- 深绿色。
darkkhaki = Color( 0.74, 0.72, 0.42, 1 ) —- 深卡其色。
darkmagenta = Color( 0.55, 0, 0.55, 1 ) —- 深洋红色。
darkolivegreen = Color( 0.33, 0.42, 0.18, 1 ) —- 深橄榄绿色。
darkorange = Color( 1, 0.55, 0, 1 ) —- 深橙色。
darkorchid = Color( 0.6, 0.2, 0.8, 1 ) —- 深色的兰花色。
darkred = Color( 0.55, 0, 0, 1 ) —- 深红色。
darksalmon = Color( 0.91, 0.59, 0.48, 1 ) —- 深鲑鱼色。
darkseagreen = Color( 0.56, 0.74, 0.56, 1 ) —- 深海绿色。
darkslateblue = Color( 0.28, 0.24, 0.55, 1 ) —- 深板蓝的颜色。
darkslategray = Color( 0.18, 0.31, 0.31, 1 ) —- 暗石板灰色。
darkturquoise = Color( 0, 0.81, 0.82, 1 ) —- 深绿松石色。
darkviolet = Color( 0.58, 0, 0.83, 1 ) —- 深紫罗兰色。
deeppink = Color( 1, 0.08, 0.58, 1 ) —- 深粉色。
deepskyblue = Color( 0, 0.75, 1, 1 ) —- 深邃的天蓝色。
dimgray = Color( 0.41, 0.41, 0.41, 1 ) —- 暗灰色。
dodgerblue = Color( 0.12, 0.56, 1, 1 ) —- 道奇蓝色。
firebrick = Color( 0.7, 0.13, 0.13, 1 ) —- 火砖的颜色。
floralwhite = Color( 1, 0.98, 0.94, 1 ) —- 花白色。
forestgreen = Color( 0.13, 0.55, 0.13, 1 ) —- 森林绿色。
fuchsia = Color( 1, 0, 1, 1 ) —- 紫红色的颜色。
gainsboro = Color( 0.86, 0.86, 0.86, 1 ) —- 庚斯伯勒颜色。
ghostwhite = Color( 0.97, 0.97, 1, 1 ) —- 幽灵白颜色。
gold = Color( 1, 0.84, 0, 1 ) —- 金色。
goldenrod = Color( 0.85, 0.65, 0.13, 1 ) —- 金黄的颜色。
gray = Color( 0.75, 0.75, 0.75, 1 ) —- 灰色。
green = Color( 0, 1, 0, 1 ) —- 绿色。
greenyellow = Color( 0.68, 1, 0.18, 1 ) —- 绿黄色。
honeydew = Color( 0.94, 1, 0.94, 1 ) —- 蜜露色。
hotpink = Color( 1, 0.41, 0.71, 1 ) —- 炙热的粉红色。
indianred = Color( 0.8, 0.36, 0.36, 1 ) —- 印度红色。
indigo = Color( 0.29, 0, 0.51, 1 ) —- 靛青色。
ivory = Color( 1, 1, 0.94, 1 ) —- 象牙色。
khaki = Color( 0.94, 0.9, 0.55, 1 ) —- 卡其色。
lavender = Color( 0.9, 0.9, 0.98, 1 ) —- 薰衣草色。
lavenderblush = Color( 1, 0.94, 0.96, 1 ) —- 薰衣草腮红的颜色。
lawngreen = Color( 0.49, 0.99, 0, 1 ) —- 草坪绿色。
lemonchiffon = Color( 1, 0.98, 0.8, 1 ) —- 柠檬雪纺色。
lightblue = Color( 0.68, 0.85, 0.9, 1 ) —- 浅蓝色。
lightcoral = Color( 0.94, 0.5, 0.5, 1 ) —- 浅珊瑚色。
lightcyan = Color( 0.88, 1, 1, 1 ) —- 淡青色。
lightgoldenrod = Color( 0.98, 0.98, 0.82, 1 ) —- 淡淡的金黄色。
lightgray = Color( 0.83, 0.83, 0.83, 1 ) —- 浅灰色。
lightgreen = Color( 0.56, 0.93, 0.56, 1 ) —- 浅绿色。
lightpink = Color( 1, 0.71, 0.76, 1 ) —- 浅粉色。
lightsalmon = Color( 1, 0.63, 0.48, 1 ) —- 浅鲑鱼色。
lightseagreen = Color( 0.13, 0.7, 0.67, 1 ) —- 浅海绿色。
lightskyblue = Color( 0.53, 0.81, 0.98, 1 ) —- 浅天蓝色。
lightslategray = Color( 0.47, 0.53, 0.6, 1 ) —- 浅板岩灰色。
lightsteelblue = Color( 0.69, 0.77, 0.87, 1 ) —- 浅钢蓝色。
lightyellow = Color( 1, 1, 0.88, 1 ) —- 浅黄色。
lime = Color( 0, 1, 0, 1 ) —- 青柠色。
limegreen = Color( 0.2, 0.8, 0.2, 1 ) —- 石灰绿色。
linen = Color( 0.98, 0.94, 0.9, 1 ) —- 亚麻色。
magenta = Color( 1, 0, 1, 1 ) —- 洋红色。
maroon = Color( 0.69, 0.19, 0.38, 1 ) —- 栗色。
mediumaquamarine = Color( 0.4, 0.8, 0.67, 1 ) —- 中等海蓝宝石色。
mediumblue = Color( 0, 0, 0.8, 1 ) —- 中蓝色。
mediumorchid = Color( 0.73, 0.33, 0.83, 1 ) —- 中等兰色。
mediumpurple = Color( 0.58, 0.44, 0.86, 1 ) —- 中等紫色。
mediumseagreen = Color( 0.24, 0.7, 0.44, 1 ) —- 中海绿色。
mediumslateblue = Color( 0.48, 0.41, 0.93, 1 ) —- 中等板岩蓝色。
mediumspringgreen = Color( 0, 0.98, 0.6, 1 ) —- 中等春天绿色。
mediumturquoise = Color( 0.28, 0.82, 0.8, 1 ) —- 中等绿松石色。
mediumvioletred = Color( 0.78, 0.08, 0.52, 1 ) —- 中等紫红色。
midnightblue = Color( 0.1, 0.1, 0.44, 1 ) —- 午夜蓝色。
mintcream = Color( 0.96, 1, 0.98, 1 ) —- 薄荷奶油色。
mistyrose = Color( 1, 0.89, 0.88, 1 ) —- 朦胧的玫瑰色。
moccasin = Color( 1, 0.89, 0.71, 1 ) —- 鹿皮鞋颜色。
navajowhite = Color( 1, 0.87, 0.68, 1 ) —- 那瓦伙族人白。
navyblue = Color( 0, 0, 0.5, 1 ) —- 藏青色。
oldlace = Color( 0.99, 0.96, 0.9, 1 ) —- 旧蕾丝颜色。
olive = Color( 0.5, 0.5, 0, 1 ) —- 橄榄色。
olivedrab = Color( 0.42, 0.56, 0.14, 1 ) —- 暗淡橄榄色。
orange = Color( 1, 0.65, 0, 1 ) —- 橙色。
orangered = Color( 1, 0.27, 0, 1 ) —- 橘红色。
orchid = Color( 0.85, 0.44, 0.84, 1 ) —- 兰花色。
palegoldenrod = Color( 0.93, 0.91, 0.67, 1 ) —- 淡金色。
palegreen = Color( 0.6, 0.98, 0.6, 1 ) —- 淡绿色。
paleturquoise = Color( 0.69, 0.93, 0.93, 1 ) —- 淡绿松石色。
palevioletred = Color( 0.86, 0.44, 0.58, 1 ) —- 淡紫红色。
papayawhip = Color( 1, 0.94, 0.84, 1 ) —- 木瓜鞭色。
peachpuff = Color( 1, 0.85, 0.73, 1 ) —- 桃花粉。
peru = Color( 0.8, 0.52, 0.25, 1 ) —- 秘鲁色。
pink = Color( 1, 0.75, 0.8, 1 ) —- 粉红色。
plum = Color( 0.87, 0.63, 0.87, 1 ) —- 梅花色。
powderblue = Color( 0.69, 0.88, 0.9, 1 ) —- 浅蓝色。
purple = Color( 0.63, 0.13, 0.94, 1 ) —- 紫色。
rebeccapurple = Color( 0.4, 0.2, 0.6, 1 ) —- 丽贝卡紫色。
red = Color( 1, 0, 0, 1 ) —- 红色。
rosybrown = Color( 0.74, 0.56, 0.56, 1 ) —- 玫瑰棕。
royalblue = Color( 0.25, 0.41, 0.88, 1 ) —- 宝蓝色。
saddlebrown = Color( 0.55, 0.27, 0.07, 1 ) —- 鞍棕色。
salmon = Color( 0.98, 0.5, 0.45, 1 ) —- 鲑鱼色。
sandybrown = Color( 0.96, 0.64, 0.38, 1 ) —- 沙褐色。
seagreen = Color( 0.18, 0.55, 0.34, 1 ) —- 海绿色。
seashell = Color( 1, 0.96, 0.93, 1 ) —- 贝壳色。
sienna = Color( 0.63, 0.32, 0.18, 1 ) —- 西恩娜色。
silver = Color( 0.75, 0.75, 0.75, 1 ) —- 银色。
skyblue = Color( 0.53, 0.81, 0.92, 1 ) —- 天蓝色。
slateblue = Color( 0.42, 0.35, 0.8, 1 ) —- 石板蓝色。
slategray = Color( 0.44, 0.5, 0.56, 1 ) —- 石板灰。
snow = Color( 1, 0.98, 0.98, 1 ) —- 雪白。
springgreen = Color( 0, 1, 0.5, 1 ) —- 春绿。
steelblue = Color( 0.27, 0.51, 0.71, 1 ) —- 钢蓝色。
tan = Color( 0.82, 0.71, 0.55, 1 ) —- 棕褐色。
teal = Color( 0, 0.5, 0.5, 1 ) —- 青色。
thistle = Color( 0.85, 0.75, 0.85, 1 ) —- 蓟色。
tomato = Color( 1, 0.39, 0.28, 1 ) —- 番茄色。
transparent = Color( 1, 1, 1, 0 ) —- 透明色(白色,无alpha)。
turquoise = Color( 0.25, 0.88, 0.82, 1 ) —- 松石绿。
violet = Color( 0.93, 0.51, 0.93, 1 ) —- 紫罗兰色。
webgray = Color( 0.5, 0.5, 0.5, 1 ) —- 网格灰。
webgreen = Color( 0, 0.5, 0, 1 ) —- 网络绿。
webmaroon = Color( 0.5, 0, 0, 1 ) —- 网络栗。
webpurple = Color( 0.5, 0, 0.5, 1 ) —- 网络紫。
wheat = Color( 0.96, 0.87, 0.7, 1 ) —- 小麦色。
white = Color( 1, 1, 1, 1 ) —- 白色。
whitesmoke = Color( 0.96, 0.96, 0.96, 1 ) —- 白烟色。
yellow = Color( 1, 1, 0, 1 ) —- 黄色。
yellowgreen = Color( 0.6, 0.8, 0.2, 1 ) —- 黄绿色。
属性说明
- float a
Default |
|
颜色的alpha(透明度)分量,通常在0到1的范围内。
- int a8
Default |
|
a的包装程序,使用的范围是0到255,而不是0到1。
- float b
Default |
|
颜色的蓝色分量,一般在0到1的范围内。
- int b8
Default |
|
b的封装器,使用0到255的范围,而不是0到1。
- float g
Default |
|
颜色的绿色分量,一般在0到1的范围内。
- int g8
Default |
|
g的封装器,使用范围0到255而不是0到1。
- float h
Default |
|
这个颜色的HSV色相,范围是0到1。
- float r
Default |
|
颜色的红色分量,通常在0到1的范围内。
- int r8
Default |
|
r的封装器,使用0到255的范围而不是0到1。
- float s
Default |
|
该颜色的HSV饱和度,范围为0到1。
- float v
Default |
|
该颜色的HSV值(亮度),范围为0至1。
方法说明
从 HTML 十六进制颜色字符串构造 ARGB 或 RGB 格式的颜色。另请参阅 @GDScript.ColorN。
# 以下每一个都是一样的颜色 RGBA(178, 217, 10, 255)。
var c1 = Color("#ffb2d90a") # ARGB 格式,带“#”。
var c2 = Color("ffb2d90a") # ARGB 格式。
var c3 = Color("#b2d90a") # RGB 格式,带“#”。
var c4 = Color("b2d90a") # RGB 格式。
从 RGBA 格式的 32 位整数构造颜色,每个字节代表一个颜色通道。
var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)
根据 RGB 值构造颜色,通常介于 0 和 1 之间。Alpha 将为 1。
var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)
根据 RGBA 值构造颜色,通常介于 0 和 1 之间。
var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to Color8(51, 255, 178, 204)
返回将此颜色混合到另一个颜色上的新颜色。如果颜色是不透明的,结果也是不透明的。第二种颜色可以有一定范围的alpha值。
var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%
var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%
var blended_color = bg.blend(fg) # Brown with alpha of 75%
- Color contrasted ( )
返回对比度最高的颜色。
var c = Color(0.3, 0.4, 0.9)
var contrasted_color = c.contrasted() # Equivalent to RGBA(204, 229, 102, 255)
返回一个新的颜色,这个颜色按指定的百分比(比例从0到1)变暗。
var green = Color(0.0, 1.0, 0.0)
var darkgreen = green.darkened(0.2) # 20% darker than regular green
从 HSV 配置文件中构建一个颜色。h
、s
和v
是0和1之间的值。
var c = Color.from_hsv(0.58, 0.5, 0.79, 0.8) # Equivalent to HSV(210, 50, 79, 0.8) or Color8(100, 151, 201, 0.8)
- float get_luminance ( )
Returns the luminance of the color in the [0.0, 1.0]
range.
This is useful when determining light or dark color. Colors with a luminance smaller than 0.5 can be generally considered dark.
- float gray ( )
返回颜色的灰度表示。
灰度值计算为 (r + g + b) / 3
。
var c = Color(0.2, 0.45, 0.82)
var gray = c.gray() # A value of 0.466667
- Color inverted ( )
返回反色(1-r,1-g,1-b,a)
。
var color = Color(0.3, 0.4, 0.9)
var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)
通过在每个组件上运行@GDScript.is_equal_approx,如果这个颜色和color
近似相等,返回true
。
返回将此颜色按指定百分比(比例从0到1)变浅后产生的新颜色。
var green = Color(0.0, 1.0, 0.0)
var lightgreen = green.lightened(0.2) # 20% lighter than regular green
返回另一种颜色的线性插值。插值系数 weight
介于 0 和 1 之间。
var c1 = Color(1.0, 0.0, 0.0)
var c2 = Color(0.0, 1.0, 0.0)
var li_c = c1.linear_interpolate(c2, 0.5) # Equivalent to Color(0.5, 0.5, 0.0)
- int to_abgr32 ( )
返回转换为 ABGR 格式的 32 位整数的颜色,每个字节代表一个颜色通道。 ABGR 是默认格式的转置版本。
var color = Color(1, 0.5, 0.2)
print(color.to_abgr32()) # Prints 4281565439
- int to_abgr64 ( )
返回转换为 ABGR 格式的 64 位整数的颜色,每个字代表一个颜色通道。 ABGR 是默认格式的转置版本。
var color = Color(1, 0.5, 0.2)
print(color.to_abgr64()) # Prints -225178692812801
- int to_argb32 ( )
返回转换为 ARGB 格式的 32 位整数的颜色,每个字节代表一个颜色通道。 ARGB 与 DirectX 更加兼容。
var color = Color(1, 0.5, 0.2)
print(color.to_argb32()) # Prints 4294934323
- int to_argb64 ( )
返回转换为 ARGB 格式的 64 位整数的颜色,每个字代表一个颜色通道。 ARGB 与 DirectX 更加兼容。
var color = Color(1, 0.5, 0.2)
print(color.to_argb64()) # Prints -2147470541
返回 ARGB 格式的 HTML 十六进制颜色字符串(例如:ff34f822
)。
将 with_alpha
设置为 false
将十六进制字符串中的 alpha 排除在外。
var c = Color(1, 1, 1, 0.5)
var s1 = c.to_html() # 返回 "7fffffff"
var s2 = c.to_html(false) # 返回 "ffffff"
- int to_rgba32 ( )
返回转换为 RGBA 格式的 32 位整数的颜色,每个字节代表一个颜色通道。 RGBA 是 Godot 的默认格式。
var color = Color(1, 0.5, 0.2)
print(color.to_rgba32()) # Prints 4286526463
- int to_rgba64 ( )
返回转换为 RGBA 格式的 64 位整数的颜色,每个字代表一个颜色通道。 RGBA 是 Godot 的默认格式。
var color = Color(1, 0.5, 0.2)
print(color.to_rgba64()) # Prints -140736629309441