From c7ca62612136c47719b230f2e50cee2ea32dfc79 Mon Sep 17 00:00:00 2001 From: Graham Triggs Date: Mon, 7 Mar 2016 21:20:35 +0000 Subject: [PATCH 1/2] Updated Freemarker --- dependencies/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencies/pom.xml b/dependencies/pom.xml index 68f463059..f142c8a22 100644 --- a/dependencies/pom.xml +++ b/dependencies/pom.xml @@ -197,7 +197,7 @@ org.freemarker freemarker - 2.3.18 + 2.3.23 org.hibernate From bbad114f858ca94b0087f0b9f359df8af36ab433 Mon Sep 17 00:00:00 2001 From: Graham Triggs Date: Thu, 10 Mar 2016 23:20:35 +0000 Subject: [PATCH 2/2] [VIVO-1234] Use alternative method to change the colour space of an image and remove the alpha channel --- .../webapp/imageprocessor/jai/JaiImageProcessor.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/imageprocessor/jai/JaiImageProcessor.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/imageprocessor/jai/JaiImageProcessor.java index 6162e33fb..912630945 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/imageprocessor/jai/JaiImageProcessor.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/imageprocessor/jai/JaiImageProcessor.java @@ -5,6 +5,7 @@ package edu.cornell.mannlib.vitro.webapp.imageprocessor.jai; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; +import java.awt.image.ColorConvertOp; import java.awt.image.ColorModel; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -85,9 +86,10 @@ public class JaiImageProcessor implements ImageProcessor { throws ImageProcessorException, IOException { try { RenderedOp mainImage = loadImage(mainImageStream); - RenderedOp opaqueImage = makeImageOpaque(mainImage); - BufferedImage bufferedImage = opaqueImage.getAsBufferedImage(); + BufferedImage bufferedImage = new BufferedImage(mainImage.getWidth(), mainImage.getHeight(), BufferedImage.TYPE_INT_RGB); + new ColorConvertOp(null).filter(mainImage.getAsBufferedImage(), bufferedImage); + log.debug("initial image: " + imageSize(bufferedImage)); log.debug("initial crop: " + crop); @@ -132,7 +134,7 @@ public class JaiImageProcessor implements ImageProcessor { } if (image.getNumBands() == 4) { - // The image has a separate alpha channel. Drop the alpha channel. + // The image has a separate alpha channel. Drop the alpha channel. return BandSelectDescriptor.create(image, COLOR_BAND_INDEXES, null); }