|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Теория - [решено] Нахождение близости цвета к белому/черному |
|
Теория - [решено] Нахождение близости цвета к белому/черному
|
Старожил Сообщения: 198 |
Добрый день.
Возникла такая задача: необходимо надписать цветной сплошно закрашенный объект белым/черным цветом в зависимости от темноты закраски, таким образом, чтоб надпись была хорошо читаема. То есть например, синий надо подписать белым, а желтый черным. В противном случае надпись не будет различима. Проблема состоит в том, как определить является ли объект светлым или темным. Изначально пробовал перевести в hsl (нормированную) и посмотреть его светлость (l). Но таким способом получается, что его светлость равна 0.5 для всех комбинаций содержащей одну или две единицы (в rgb). То есть желтый и синий одинаково близки к черному, что не так. Что-то я не делаю не так, но не понимаю что. Вопрос в том, как же решить данную задачу? Заранее благодарен. |
|
Отправлено: 00:30, 18-07-2012 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать А если посмотреть в сторону RGB цвета? однозначно ведь будет понятно, что 255,255,255 - это белый, а 0,0,0 - черный. И в зависимости от чисел вывести закономерность и печатать?
|
------- Отправлено: 01:13, 18-07-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 02:05, 18-07-2012 | #3 |
DOOMer Сообщения: 3254
|
Профиль | Отправить PM | Цитировать Как вариант что-нибудь типа
(11*R+30*G+59*B)/100 и посмотреть, к чему ближе результат. |
------- Отправлено: 06:56, 18-07-2012 | #4 |
Старожил Сообщения: 154
|
Профиль | Отправить PM | Цитировать вы знаете - желтый (255.255.0) имеет HSL (60.100.100), синий (0.0.255) имеет HSL (240.100.100) и это значит что они одинаково далеки как от белого так и черного.
а разные они потому что желтый и синий сами по себе ближе и дальше от черного как цвет, не осветленный и не затемненный. Вот тут на рисуночке это очень хорошо показано - там внешний круг - цвета, внутренний - отношение к черному. как определить точное отношение цвета к черному? попробуйте в paint.net залить квадрат, а затем применить операцию перехода в "серую" палитру - должно помочь |
|
Отправлено: 07:00, 18-07-2012 | #5 |
Старожил Сообщения: 198
|
Профиль | Отправить PM | Цитировать Спасибо всем откликнувшимся. Решил остановиться на совете Iska (особое спасибо за наглядность
![]() |
Отправлено: 17:21, 18-07-2012 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Нахождение суммарного объема файлов | XFNeo | Скриптовые языки администрирования Windows | 5 | 11-12-2011 15:56 | |
CMD/BAT - [решено] нахождение txt. | Чин Хон | Скриптовые языки администрирования Windows | 8 | 21-01-2011 12:05 | |
CMD/BAT - Нахождение и выбор папки и её копирование | ikif | Скриптовые языки администрирования Windows | 1 | 30-12-2010 12:01 | |
Житель Нью-Йорка строит ядерный реактор в близости от жилых кварталов | OSZone News | Новости информационных технологий | 5 | 01-07-2010 16:19 | |
Теория - Нахождение внутренних углов в многоугольнике | mrcnn | Программирование и базы данных | 8 | 01-06-2008 14:51 |
|