Re: HTML hexidecimal code from NSColor
Re: HTML hexidecimal code from NSColor
- Subject: Re: HTML hexidecimal code from NSColor
- From: "Clark S. Cox III" <email@hidden>
- Date: Fri, 16 May 2003 08:32:17 -0400
On Thursday, May 15, 2003, at 22:51 US/Eastern, Francisco Tolmasky
wrote:
Given an NSColor object, how do I create a string with the HTML
hexadecimal color codes?
I tried this:
- (NSString *)colorString
{
float red, green, blue;
[[color colorUsingColorSpaceName: NSCalibratedRGBColorSpace]
getRed: &red green: &green blue: &blue alpha: nil];
return [NSString stringWithFormat: @"%X%X%X", red, green, blue];
}
This doesn't work though, since the numbers returned are between 0.0
and 1.0, not 0 and 255. Does anyone know how to get it to work?
Well, if you have a number between 0 and 1, and you want it to be
between 0 and 255, then just multiply by 255. Also, you should never
pass a float to printf-like functions/methods via %X. Try this:
- (NSString *)colorString
{
float red, green, blue;
[[color colorUsingColorSpaceName: NSCalibratedRGBColorSpace]
getRed: &red green: &green blue: &blue alpha: nil];
return [NSString stringWithFormat: @"%X%X%X", (unsigned)(red*255),
(unsigned)(green*255), (unsigned)(blue*255)];
}
--
http://homepage.mac.com/clarkcox3/
email@hidden
Clark S. Cox, III
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.