Author: tilman Date: Thu May 6 18:46:49 2021 New Revision: 1889577 URL: http://svn.apache.org/viewvc?rev=1889577&view=rev Log: PDFBOX-4892: optimize by changing sequence
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/SampledImageReader.java Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/SampledImageReader.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/SampledImageReader.java?rev=1889577&r1=1889576&r2=1889577&view=diff ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/SampledImageReader.java (original) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/SampledImageReader.java Thu May 6 18:46:49 2021 @@ -189,7 +189,6 @@ final class SampledImageReader final int width = (int) Math.ceil(clipped.getWidth() / subsampling); final int height = (int) Math.ceil(clipped.getHeight() / subsampling); final int bitsPerComponent = pdImage.getBitsPerComponent(); - final float[] decode = getDecodeArray(pdImage); if (width <= 0 || height <= 0 || pdImage.getWidth() <= 0 || pdImage.getHeight() <= 0) { @@ -211,7 +210,8 @@ final class SampledImageReader WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, width, height, numComponents, new Point(0, 0)); final float[] defaultDecode = pdImage.getColorSpace().getDefaultDecode(8); - if (bitsPerComponent == 8 && Arrays.equals(decode, defaultDecode) && colorKey == null) + final float[] decode = getDecodeArray(pdImage); + if (bitsPerComponent == 8 && colorKey == null && Arrays.equals(decode, defaultDecode)) { // convert image, faster path for non-decoded, non-colormasked 8-bit images return from8bit(pdImage, raster, clipped, subsampling, width, height);