< prev index next >
src/java.desktop/unix/classes/sun/java2d/xr/XRColor.java
Print this page
*** 71,107 ****
public static int[] ARGBPrePixelToXRColors(int[] pixels) {
int[] colorValues = new int[pixels.length * 4];
XRColor c = new XRColor();
for (int i = 0; i < pixels.length; i++) {
! c.setColorValues(pixels[i], true);
colorValues[i * 4 + 0] = c.alpha;
colorValues[i * 4 + 1] = c.red;
colorValues[i * 4 + 2] = c.green;
colorValues[i * 4 + 3] = c.blue;
}
return colorValues;
}
! public void setColorValues(int pixel, boolean pre) {
long pix = XRUtils.intToULong(pixel);
alpha = (int) (((pix & 0xFF000000) >> 16) + 255);
red = (int) (((pix & 0x00FF0000) >> 8) + 255);
green = (int) (((pix & 0x0000FF00) >> 0) + 255);
blue = (int) (((pix & 0x000000FF) << 8) + 255);
if (alpha == 255) {
alpha = 0;
}
-
- if (!pre) {
- double alphaMult = XRUtils.XFixedToDouble(alpha);
- this.red = (int) (red * alphaMult);
- this.green = (int) (green * alphaMult);
- this.blue = (int) (blue * alphaMult);
- }
}
public static int byteToXRColorValue(int byteValue) {
int xrValue = 0;
--- 71,100 ----
public static int[] ARGBPrePixelToXRColors(int[] pixels) {
int[] colorValues = new int[pixels.length * 4];
XRColor c = new XRColor();
for (int i = 0; i < pixels.length; i++) {
! c.setColorValues(pixels[i]);
colorValues[i * 4 + 0] = c.alpha;
colorValues[i * 4 + 1] = c.red;
colorValues[i * 4 + 2] = c.green;
colorValues[i * 4 + 3] = c.blue;
}
return colorValues;
}
! public void setColorValues(int pixel) {
long pix = XRUtils.intToULong(pixel);
alpha = (int) (((pix & 0xFF000000) >> 16) + 255);
red = (int) (((pix & 0x00FF0000) >> 8) + 255);
green = (int) (((pix & 0x0000FF00) >> 0) + 255);
blue = (int) (((pix & 0x000000FF) << 8) + 255);
if (alpha == 255) {
alpha = 0;
}
}
public static int byteToXRColorValue(int byteValue) {
int xrValue = 0;
< prev index next >