Author: lehmi Date: Sun Sep 12 15:47:54 2010 New Revision: 996331 URL: http://svn.apache.org/viewvc?rev=996331&view=rev Log: PDFBOX-826: reduced number of array accesses to increase the performance as suggested by Timo Boehme
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/ColorSpaceCMYK.java Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/ColorSpaceCMYK.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/ColorSpaceCMYK.java?rev=996331&r1=996330&r2=996331&view=diff ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/ColorSpaceCMYK.java (original) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/ColorSpaceCMYK.java Sun Sep 12 15:47:54 2010 @@ -137,15 +137,12 @@ public class ColorSpaceCMYK extends Colo if (colorvalue != null && colorvalue.length == 4) { // First of all we have to convert from CMYK to CMY - float c = ( colorvalue[0] * ( 1 - colorvalue[3] ) + colorvalue[3] ); - float m = ( colorvalue[1] * ( 1 - colorvalue[3] ) + colorvalue[3] ); - float y = ( colorvalue[2] * ( 1 - colorvalue[3] ) + colorvalue[3] ); + float k = colorvalue[3]; + float c = ( colorvalue[0] * ( 1 - k ) + k ); + float m = ( colorvalue[1] * ( 1 - k ) + k ); + float y = ( colorvalue[2] * ( 1 - k ) + k ); // Now we have to convert from CMY to RGB - float[] rgbvalues = new float[3]; - rgbvalues[0] = 1 - c; - rgbvalues[1] = 1 - m; - rgbvalues[2] = 1 - y; - return rgbvalues; + return new float[] { 1 - c, 1 - m, 1 - y }; } return null; }