Re: Re^2: Цветной текст
- From
- Sergey Andrianov (2:5020/1507.400)
- To
- Andrew Starsh
- Date
- 2002-12-30T23:17:08Z
- Area
- RU.ALGORITHMS
Здравствуй, Andrew!
Однажды 27-Dec-02 в 12:23 Andrew Starsh (2:5071/59)
написал Sergey Andrianov по поводу
-=- Re^2: Цветной текст -=-
SA>>>> Самое простое - выбирать наиболее удаленный цвет в
SA>>>> координатах HSV, впрочем, возможно, аналогично будет и в RGB.
DS>>> А мне кажется нужно посчитать интенсивность фона (R+G+B) и если
DS>>> результат больше половины максимальной интенсивности то печатать
DS>>> черным, иначе белым цветом
SA>> Вообще-то интенсивность фона Y = 0.30*R + 0.59*G + 0.11*b.
AS> Интенсивность говоpит только о пpедставлении цвета в шкале сеpого, ее тоже
AS> нужно учитывать, но все-таки лучше в качестве контpастного цвета бpать
цвет,
AS> _дополнительный_до белого.
Сразу возражение: для (127,127,127) дополнительным будет (128,128,128). Думаю,
комментарии излишни :).
AS> Вообще-то я бы пpовеpял уpовень каждого цвета. Если уpовень синего -
AS> меньше половины от возможного, в контpастный я бы бpал полный синий.
AS> Уpовень кpасного больше половины - в контpастный - нулевой кpасный. Так же
AS> и с зеленым.
И получишь как раз тот способ, который я советую в двух самых верхних строках
цитаты. Точнее, RGB вариант, либо HSV вариант с равными весами. В HSV же, если ввести метрику с достаточно большим весом по V, то получится алгоритм, уже описанный в эхе, при котором выбирается один из двух цветов - белый или черный.
До свидания, в 22:33 MSK
Sergey
---
* Origin: Sergiev Posad (2:5020/1507.400)