Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.73.35] |
|
Сообщ.
#1
,
|
|
|
Думаю может пригодиться.
В зависимости от яркости фона выбирается либо черный либо белый цвет. Небольшой код: Function GetRColor(ByVal Color As Long) As Long Dim R&, G&, B& R = Color Mod 256 G = (Color \ 256) Mod 256 B = Int(Color / 256 / 256) 'RGB в YUV Y = 0.299 * R + 0.587 * G + 0.114 * B U = -(0.147) * R - 0.289 * G + 0.436 * B '+ 128 V = 0.615 * R - 0.515 * G - 0.1 * B '+ 128 GetRColor = IIf(Y < 129, vbWhite, 0) ''YUV в RGB 'R = Y + 1.14 * V 'G = Y - 0.395 * U - 0.581 * V 'B = Y + 2.032 * U End Function Function GetRColor(ByVal Color As Long) As Long Dim R&, G&, B& R = Color Mod 256 G = (Color \ 256) Mod 256 B = Int(Color / 256 / 256) GetRColor = IIf(0.299 * R + 0.587 * G + 0.114 * B < 129, vbWhite, vbBlack) End Function |