Revision 1632 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.swing/org.gvsig.tools.swing.impl/src/main/java/org/gvsig/tools/swing/impl/DefaultToolsSwingManager.java
DefaultToolsSwingManager.java | ||
---|---|---|
109 | 109 |
|
110 | 110 |
@Override |
111 | 111 |
public Color alphaBlendingWithOpaqueBackground(Color bgColor, Color fgColor) { |
112 |
// https://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending |
|
112 | 113 |
Color src = fgColor; |
113 | 114 |
Color dst = bgColor; |
114 | 115 |
|
... | ... | |
123 | 124 |
); |
124 | 125 |
return color; |
125 | 126 |
} |
126 |
|
|
127 |
|
|
128 |
@Override |
|
129 |
public Color opaqueColor(Color src) { |
|
130 |
// https://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending |
|
131 |
double srca = src.getAlpha() / 255.0; |
|
132 |
double srca_1 = (1 - srca); |
|
133 |
|
|
134 |
Color color = new Color( |
|
135 |
(int)(src.getRed() * srca + 255 * srca_1) & 0xff, |
|
136 |
(int)(src.getGreen()* srca + 255 * srca_1) & 0xff, |
|
137 |
(int)(src.getBlue() * srca + 255 * srca_1) & 0xff |
|
138 |
); |
|
139 |
return color; |
|
140 |
} |
|
127 | 141 |
} |
Also available in: Unified diff