summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java
index f086712e..d701313f 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/helper/ColorUtil.java
@@ -49,11 +49,21 @@ public class ColorUtil {
}
public static float getBrightness(Color color) {
- return Color.RGBtoHSB(color.getRed(), color.getBlue(), color.getGreen(), null)[2];
+ float a[] = new float[3];
+ color.getRGBColorComponents(a);
+ return a[0] * 0.2126f + a[1] * 0.7152f + a[2] * 0.0722f;
+ }
+
+ public static float getContrast(Color a, Color b) {
+ float val = (getBrightness(a) + 0.05f) / (getBrightness(b) + 0.05f);
+ if (val < 1) {
+ val = 1 / val;
+ }
+ return val;
}
public static Color contrastColor(Color color) {
return new Color(color.getRed() ^ 0x80, color.getGreen() ^ 0x80, color.getBlue() ^ 0x80);
}
-
+
}