Ich muss feststellen, ob eine ausgewählte UIColor (vom Benutzer ausgewählt) dunkel oder hell ist, damit ich die Farbe einer Textzeile ändern kann, die über dieser Farbe liegt, um die Lesbarkeit zu verbessern.
Hier ist ein Beispiel in Flash / Actionscript (mit Demo): http://web.archive.org/web/20100102024448/http://theflashblog.com/?p=173
Irgendwelche Gedanken?
Prost, Andre
AKTUALISIEREN
Dank aller Vorschläge ist hier der Arbeitscode:
- (void) updateColor:(UIColor *) newColor
{
const CGFloat *componentColors = CGColorGetComponents(newColor.CGColor);
CGFloat colorBrightness = ((componentColors[0] * 299) + (componentColors[1] * 587) + (componentColors[2] * 114)) / 1000;
if (colorBrightness < 0.5)
{
NSLog(@"my color is dark");
}
else
{
NSLog(@"my color is light");
}
}
Noch einmal vielen Dank :)