Выяснение цвета текста на основе цвета фона iOS - PullRequest
9 голосов
/ 27 марта 2012

У меня есть эти виды, для которых я добавляю UILabels в качестве текста. Виды могут иметь динамический цвет фона, который не может быть выбран,

Исходя из этого, мне нужно определить цвет шрифта только изнабор из трех вариантов - два черных или белый или темно-серый.

Например, на темно-красном фоне белый шрифт будет более подходящим, чем черный, а на светло-желтом, возможно, темно-сером или черном.быть читабельным,

есть ли какой-нибудь индекс, который я мог бы проверить на фоне UIColor, чтобы увидеть освещенность?

1 Ответ

9 голосов
/ 28 марта 2012

Взгляните на мою UIColor категорию и метод blackOrWhiteContrastingColor. Это скажет вам, что будет выглядеть лучше из черного или белого. Вы можете расширить это, чтобы поддержать темно-серый.

В основном, это работает, как посмотреть на разницу яркости между целевым цветом и черным, а затем между целевым цветом и белым. Затем он выбирает наибольшую разницу яркости.

...