You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2019/10/23 03:50:49 UTC
svn commit: r1868778 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
Author: tilman
Date: Wed Oct 23 03:50:49 2019
New Revision: 1868778
URL: http://svn.apache.org/viewvc?rev=1868778&view=rev
Log:
PDFBOX-4672: check transparency too, because our "fast path" createFromGrayImage() doesn't handle them
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java?rev=1868778&r1=1868777&r2=1868778&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/LosslessFactory.java Wed Oct 23 03:50:49 2019
@@ -79,8 +79,9 @@ public final class LosslessFactory
public static PDImageXObject createFromImage(PDDocument document, BufferedImage image)
throws IOException
{
- if ((image.getType() == BufferedImage.TYPE_BYTE_GRAY && image.getColorModel().getPixelSize() <= 8)
- || (image.getType() == BufferedImage.TYPE_BYTE_BINARY && image.getColorModel().getPixelSize() == 1))
+ if (image.getTransparency() == BufferedImage.OPAQUE &&
+ ((image.getType() == BufferedImage.TYPE_BYTE_GRAY && image.getColorModel().getPixelSize() <= 8)
+ || (image.getType() == BufferedImage.TYPE_BYTE_BINARY && image.getColorModel().getPixelSize() == 1)))
{
return createFromGrayImage(image, document);
}