Author: jahewson Date: Sun Mar 23 01:04:17 2014 New Revision: 1580399 URL: http://svn.apache.org/r1580399 Log: PDFBOX-1953: BitsPerComponent is optional for image masks
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDInlineImage.java Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java?rev=1580399&r1=1580398&r2=1580399&view=diff ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java (original) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java Sun Mar 23 01:04:17 2014 @@ -320,7 +320,14 @@ public final class PDImageXObject extend public int getBitsPerComponent() { - return getCOSStream().getInt(COSName.BITS_PER_COMPONENT, COSName.BPC); + if (isStencil()) + { + return 1; + } + else + { + return getCOSStream().getInt(COSName.BITS_PER_COMPONENT, COSName.BPC); + } } public void setBitsPerComponent(int bpc) Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDInlineImage.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDInlineImage.java?rev=1580399&r1=1580398&r2=1580399&view=diff ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDInlineImage.java (original) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDInlineImage.java Sun Mar 23 01:04:17 2014 @@ -103,7 +103,14 @@ public final class PDInlineImage impleme public int getBitsPerComponent() { - return parameters.getInt(COSName.BPC, COSName.BITS_PER_COMPONENT, -1); + if (isStencil()) + { + return 1; + } + else + { + return parameters.getInt(COSName.BPC, COSName.BITS_PER_COMPONENT, -1); + } } public void setBitsPerComponent(int bitsPerComponent)