Hogyan készítsünk standard színeket a delphi világosabb vagy sötétebb színekben?
Delphi. Grafika és játékok. Színek és paletta
Hogyan készítsünk standard színeket Delphi világosabb vagy sötétebb formában?
Ebben a cikkben azt szeretném bemutatni, hogy egy normál színből sötétebb vagy világosabb színt kapjunk. És fontolja meg, hogyan valósul meg ez az elv a programkódban.
Szóval, egy kis elmélet
A három elsődleges szín közül mindegyik (Vörös, Zöld, Kék) értéke 0 és 255 között lehet, kombinálva 16.777.216 lehetséges színt. Vizuálisan ez a kocka három tengelye, ahol az x, y és z irányok felelősek a piros, zöld és kék színekért. Összefoglalva, ezek az irányok egy pontot adnak a kockában, amely 16 millió színt képvisel. Az a kocka, amelyben az érték 0 (0,0,0) megfelel a fekete színnek, az érték (255,255,255) fehér, (255,0,0) tiszta piros, stb.
Ha vizuálisan rajzol egy vonalat bármelyik szín (r, g, b) és fehér szín (255,255,255) között, kiderül, hogy ez a sor tartalmazza az adott szín (r, g, b) összes értékét. Ha a vonal mentén fehér felé haladunk, a fényerő növekedni fog, amíg tiszta fehér színt nem kapunk.
Ugyanez tehető a szín világosságának csökkentésére. Elég, ha vonalat rajzol (r, g, b) a feketére (0,0,0). Vagyis amikor a vonal mentén fekete felé haladunk, csökkenti a fényerőt, amíg fekete szín nem lesz.
A "Sötétebb" funkció új színértéket ad vissza, amely egy százalékos sötétebb lesz. Természetesen 100% -ban fekete színt kapunk. A "Világosabb" funkció olyan színt ad vissza, amely az eredeti százalékos százalékánál könnyebb. 100% fehér.
A sötétebb és könnyebb funkciók 2 paramétert igényelnek és kb.
Az eredmény egy színpanel, amely 20% -kal sötétebb, mint a szokásos kék szín.
Most nézzük meg, hogy a funkciók hogyan néznek ki: