Merge pull request #33 from OpenVIVO/develop
VIVO-1234 JaiImageProcessor alpha channel problem
This commit is contained in:
commit
bae17b4293
2 changed files with 6 additions and 4 deletions
|
@ -5,6 +5,7 @@ package edu.cornell.mannlib.vitro.webapp.imageprocessor.jai;
|
||||||
import java.awt.geom.AffineTransform;
|
import java.awt.geom.AffineTransform;
|
||||||
import java.awt.image.AffineTransformOp;
|
import java.awt.image.AffineTransformOp;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
|
import java.awt.image.ColorConvertOp;
|
||||||
import java.awt.image.ColorModel;
|
import java.awt.image.ColorModel;
|
||||||
import java.io.ByteArrayInputStream;
|
import java.io.ByteArrayInputStream;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
|
@ -85,9 +86,10 @@ public class JaiImageProcessor implements ImageProcessor {
|
||||||
throws ImageProcessorException, IOException {
|
throws ImageProcessorException, IOException {
|
||||||
try {
|
try {
|
||||||
RenderedOp mainImage = loadImage(mainImageStream);
|
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 image: " + imageSize(bufferedImage));
|
||||||
|
|
||||||
log.debug("initial crop: " + crop);
|
log.debug("initial crop: " + crop);
|
||||||
|
@ -132,7 +134,7 @@ public class JaiImageProcessor implements ImageProcessor {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (image.getNumBands() == 4) {
|
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);
|
return BandSelectDescriptor.create(image, COLOR_BAND_INDEXES, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
dependencies/pom.xml
vendored
2
dependencies/pom.xml
vendored
|
@ -197,7 +197,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.freemarker</groupId>
|
<groupId>org.freemarker</groupId>
|
||||||
<artifactId>freemarker</artifactId>
|
<artifactId>freemarker</artifactId>
|
||||||
<version>2.3.18</version>
|
<version>2.3.23</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.hibernate</groupId>
|
<groupId>org.hibernate</groupId>
|
||||||
|
|
Loading…
Add table
Reference in a new issue