1、光的三原色 :紅缭贡、綠炉擅、藍
2、在Pygame中我們用三個整數(shù)的元組來表示顏色阳惹。元組中的第一個值是顏色中有多少紅色谍失。整數(shù)值0表示此顏色中沒有紅色,值255 表示顏色中存在最大紅色量莹汤。第二個值是綠色快鱼,第三個值是藍色。這些用于表示顏色的三個整數(shù)元組通常稱為RGB值纲岭。
3抹竹、Pygame可以繪制16,777,216種不同的顏色(即256 x 256 x 256種顏色)。但是止潮,如果嘗試使用大于255的數(shù)字 或負(fù)數(shù)窃判,您將收到類似“ ValueError:invalid color argument ”的錯誤。
4喇闸、例如袄琳,我們將創(chuàng)建元組(0,0,0)并將其存儲在名為BLACK的變量中。沒有紅色燃乍,綠色或藍色唆樊,產(chǎn)生的顏色完全是黑色。黑色是沒有任何顏色橘沥。元組(255,255,255)表示最大量的紅色窗轩,綠色和藍色,表示白色座咆。白色是紅色痢艺,綠色和藍色的完整組合仓洼。元組(255,0,0)表示最大紅色量但沒有綠色和藍色量,因此得到的顏色為紅色堤舒。類似地色建,(0,255,0)為綠色,(0,0,255) 為藍色舌缤。
顏色 | RGB值 |
---|---|
Aqua(淺綠色) | (0,255,255) |
Blank(黑色) | (0,0,0) |
Blue(藍色) | ( 0, 0, 255) |
Fuchsia(紫紅色) | (255,0,255) |
Gray(灰色) | (128, 128, 128) |
Green(綠色) | ( 0, 128, 0) |
Lime(綠黃色) | ( 0, 255, 0) |
Maroon(栗色) | (128, 0, 0) |
Navy Blue(深藍色) | ( 0, 0, 128) |
Olive(橄欖色) | (128, 128, 0) |
Purple(紫色) | (128, 0, 128) |
Red(紅色) | (255, 0, 0) |
Silver(銀灰色) | (192, 192, 192) |
Teal(墨綠色) | ( 0, 128, 128) |
White(白色) | (255, 255, 255) |
Yellow(黃色) | (255, 255, 0) |
透明的顏色(Transparent Colors)
假設(shè)透過紅色玻璃看世界箕戳,世界都會有一層紅色陰影」欤可以通過向顏色值添加第四個0到255整數(shù)值來模仿此效果陵吸。
第四個值被稱為alpha value。用于衡量顏色的不透明度介牙。通常壮虫,當(dāng)您將像素繪制到曲面對象上時,新顏色將完全替換已存在的任何顏色环础。但是對于具有alpha值的顏色囚似,您只需在已經(jīng)存在的顏色上添加彩色色調(diào)。
例如线得,這個三元組的元組是綠色:(0,255,0)饶唤。但是如果我們?yōu)閍lpha值添加第四個整數(shù),我們可以將其設(shè)為半透明綠色:(0,255,0,128)贯钩。Alpha值為255 是完全不透明的(即根本不透明)募狂。顏色(0,255,0)和(0,255,0,255) 看起來完全相同。alpha值為0表示顏色完全透明魏保。如果將任何alpha值為0的顏色繪制到曲面對象熬尺,它將無效,因為此顏色完全透明且不可見谓罗。
要使用透明顏色進行繪制,必須使用convert_alpha()方法創(chuàng)建Surface對象季二。例如檩咱,以下代碼創(chuàng)建一個可以繪制透明顏色的Surface對象:
anotherSurface = DISPLAYSURF.convert_alpha()
一旦在存儲在anotherSurface中的Surface對象上繪制了一些東西,那么另一個表面 可以“blitted”(即復(fù)制)到DISPLAYSURF胯舷,這樣它就會出現(xiàn)在屏幕上刻蚯。