aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/java/org/apache/fop/render/pdf/ImageRenderedAdapter.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/java/org/apache/fop/render/pdf/ImageRenderedAdapter.java b/src/java/org/apache/fop/render/pdf/ImageRenderedAdapter.java
index f1e816233..c1eaa07c9 100644
--- a/src/java/org/apache/fop/render/pdf/ImageRenderedAdapter.java
+++ b/src/java/org/apache/fop/render/pdf/ImageRenderedAdapter.java
@@ -23,6 +23,7 @@ import java.awt.color.ICC_ColorSpace;
import java.awt.color.ICC_Profile;
import java.awt.image.ColorModel;
import java.awt.image.IndexColorModel;
+import java.awt.image.Raster;
import java.awt.image.RenderedImage;
import java.io.IOException;
import java.io.OutputStream;
@@ -30,6 +31,7 @@ import java.io.OutputStream;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.xmlgraphics.image.GraphicsUtil;
import org.apache.xmlgraphics.image.loader.impl.ImageRendered;
import org.apache.xmlgraphics.ps.ImageEncodingHelper;
@@ -124,8 +126,11 @@ public class ImageRenderedAdapter extends AbstractImageAdapter {
//TODO Implement code to combine image with background color if transparency is not
//allowed (need BufferedImage support for that)
- AlphaRasterImage alphaImage = new AlphaRasterImage("Mask:" + getKey(), ri);
- this.softMask = doc.addImage(null, alphaImage).makeReference();
+ Raster raster = GraphicsUtil.getAlphaRaster(ri);
+ if (raster != null) {
+ AlphaRasterImage alphaImage = new AlphaRasterImage("Mask:" + getKey(), raster);
+ this.softMask = doc.addImage(null, alphaImage).makeReference();
+ }
}
}