Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Цвет фона и надписи 
:(
    Опции темы
Антон
Дата 30.7.2003, 15:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Проблема в следующем:
Есть надпись на фоне некоторого цвета и хочется, чтобы она не сливалась с фоном и хорошо читалась, при этом чтобы она была либо чёрной, либо белой. Как по РГБ-коду цвета определить, чёрной или белой должна быть надпись?
  Вверх
B2_Russia
Дата 30.7.2003, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: 1
Всего: 1



Предлагаю найти среднее значение цвета фона (3*255)/2 = X
если X<127 тогда - белая иначе - черная.

Вот таким тупым способом сделал бы я, хотя нада посмотреть что получится...

либо так:

X = 0.30*R+0.59*G+0.11*B;

если X<127 тогда - белая иначе - черная.

Так наверное будет правильнее

PM WWW ICQ   Вверх
Crait
Дата 30.7.2003, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 244
Регистрация: 20.2.2003

Репутация: 1
Всего: 1



Определяешь в RGB-пространстве расстояния от точки с цветом фона
до точки белого цвета и до точки черного цвета.
Какое расстояние больше - тот цвет и используй.

Вообще-то у меня функция определения расстояния
была несколько сложнее, чем просто расстояние в 3D-модели,
но можно и так.

Это сообщение отредактировал(а) Crait - 30.7.2003, 15:27
PM MAIL   Вверх
Unregistered
Дата 30.7.2003, 15:24 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Фон одноцветный
  Вверх
Антон
Дата 30.7.2003, 15:26 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Фон одноцветный
X = 0.30*R+0.59*G+0.11*B;
А эти числа откуда?
  Вверх
B2_Russia
Дата 30.7.2003, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: 1
Всего: 1



Это преобразование в 256 градаций серого
PM WWW ICQ   Вверх
Антон
Дата 30.7.2003, 15:28 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Фон одноцветный
X = 0.30*R+0.59*G+0.11*B;
А эти числа откуда?
  Вверх
B2_Russia
Дата 30.7.2003, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: 1
Всего: 1



Да не знаю я откуда, главное работает. Могу предположить, что их вывели из способности глаза различать оттенки цвета или диапазоны волн. Не я их придумал, могу сказать, что это - "стандарт", не беспокойся.
PM WWW ICQ   Вверх
&-ray
Дата 31.7.2003, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 406
Регистрация: 15.4.2003
Где: Казахстан, г Аста на

Репутация: нет
Всего: нет



Цитата
Фон одноцветный
X = 0.30*R+0.59*G+0.11*B;
А эти числа откуда?

Посмотри СЮДА если тебе легче станет.


--------------------
"Совсем неважно от чего помрешь, ведь куда важнее - для чего родился..." С.Б.

--------------------
И снова мышь беру я в руки
Куда иду? - Конечно в сруки!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0895 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.