Author: tilman
Date: Tue Oct  8 09:40:39 2024
New Revision: 1921187

URL: http://svn.apache.org/viewvc?rev=1921187&view=rev
Log:
PDFBOX-5882: add warning if component count doesn't match colorspace

Modified:
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColor.java

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColor.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColor.java?rev=1921187&r1=1921186&r2=1921187&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColor.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColor.java
 Tue Oct  8 09:40:39 2024
@@ -105,6 +105,12 @@ public final class PDColor
         this.components = components.clone();
         this.patternName = null;
         this.colorSpace = colorSpace;
+        if (colorSpace != null && colorSpace.getNumberOfComponents() != 
components.length)
+        {
+            // PDFBOX-5882
+            LOG.warn("Colorspace component count " + 
colorSpace.getNumberOfComponents() +
+                    " doesn't match components length " + components.length);
+        }
     }
 
     /**
@@ -130,6 +136,16 @@ public final class PDColor
         this.components = components.clone();
         this.patternName = patternName;
         this.colorSpace = colorSpace;
+        if (colorSpace instanceof PDPattern)
+        {
+            PDColorSpace ucs = ((PDPattern) 
colorSpace).getUnderlyingColorSpace();
+            if (ucs != null && ucs.getNumberOfComponents() != 
components.length)
+            {
+                // PDFBOX-5882
+                LOG.warn("Pattern colorspace component count " + 
ucs.getNumberOfComponents() +
+                        " doesn't match components length " + 
components.length);
+            }
+        }
     }
 
     /**


Reply via email to