PhilB
18-07-2012, 00:30
Добрый день.
Возникла такая задача: необходимо надписать цветной сплошно закрашенный объект белым/черным цветом в зависимости от темноты закраски, таким образом, чтоб надпись была хорошо читаема.
То есть например, синий надо подписать белым, а желтый черным. В противном случае надпись не будет различима.
Проблема состоит в том, как определить является ли объект светлым или темным.
Изначально пробовал перевести в hsl (нормированную) и посмотреть его светлость (l). Но таким способом получается, что его светлость равна 0.5 для всех комбинаций содержащей одну или две единицы (в rgb). То есть желтый и синий одинаково близки к черному, что не так. Что-то я не делаю не так, но не понимаю что.
Вопрос в том, как же решить данную задачу?
Заранее благодарен.
Возникла такая задача: необходимо надписать цветной сплошно закрашенный объект белым/черным цветом в зависимости от темноты закраски, таким образом, чтоб надпись была хорошо читаема.
То есть например, синий надо подписать белым, а желтый черным. В противном случае надпись не будет различима.
Проблема состоит в том, как определить является ли объект светлым или темным.
Изначально пробовал перевести в hsl (нормированную) и посмотреть его светлость (l). Но таким способом получается, что его светлость равна 0.5 для всех комбинаций содержащей одну или две единицы (в rgb). То есть желтый и синий одинаково близки к черному, что не так. Что-то я не делаю не так, но не понимаю что.
Вопрос в том, как же решить данную задачу?
Заранее благодарен.