< prev index next >

src/java.desktop/unix/classes/sun/java2d/xr/XRColor.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2010, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 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 >