Dear Readers, I am using a program that allows the user to input two colors, one a Foreground color and the other a Background color. The program outputs whether the two colors have sufficient "color difference" and sufficient "brightness difference". If both conditions are fulfilled then these colors can be used as Foreground and Background colors. I analyzed the outputs for different inputs and found the algorithm that the program used to calculate the "color difference". I tried to do the same to find the algorithm used to calculate the "brightness difference". But in vain! Does anybody know how to calculate the brightness difference? I need this because I want to make a Java program that takes in a color input and outputs all the possible colors that can be used in combination with the input color.
This is a bit advanced for beginners. Let's promote this topic to the intermediate forum.
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer sscce.org
Shyam Prasad Murarka
Joined: May 02, 2005
Dear Readers, Thank you for all your suggestions. I tried the Color methods suggested above. It seems they are not what I needed. I again tried analyzing the different outputs to come up with the algorithm that the program used. I gave up at last and headed to the website of the program. After a bit of searching I was so RELIEVED to find the algorithm that they used displayed! Here is the link, if anyone's interested. And this is the more detailed version of the formula.
Joined: Mar 22, 2005
So what you actually needed was the luminance of a pixel, not its brightness. There is a color model called HLS which has that information. It's not supported by the java.awt.Color class, though, so it's a bit harder to use than HSB. HLS is accessible through the java.awt.color.ColorSpace class, though. [ June 24, 2007: Message edited by: Ulf Dittmer ]