You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2012/03/17 14:31:32 UTC

svn commit: r1301936 - in /pdfbox/trunk/preflight/src: main/java/org/apache/padaf/preflight/ main/java/org/apache/padaf/preflight/graphics/color/ test/resources/

Author: leleueri
Date: Sat Mar 17 13:31:32 2012
New Revision: 1301936

URL: http://svn.apache.org/viewvc?rev=1301936&view=rev
Log:
[PDFBOX-1259] The DeciveColorSpaceHelper had too many constraints.
Now only  Indexed, DeviceN and Pattern Color space are forbidden or restricted in a inline Image.

Modified:
    pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/ValidationResult.java
    pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/DeviceColorSpaceHelper.java
    pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/StandardColorSpaceHelper.java
    pdfbox/trunk/preflight/src/test/resources/expected_errors.txt

Modified: pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/ValidationResult.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/ValidationResult.java?rev=1301936&r1=1301935&r2=1301936&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/ValidationResult.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/ValidationResult.java Sat Mar 17 13:31:32 2012
@@ -235,9 +235,11 @@ public class ValidationResult {
 		 */
 		public ValidationError(String errorCode, String details) {
 			this(errorCode);
-			StringBuilder sb = new StringBuilder(this.details.length()+details.length()+2);
-			sb.append(this.details).append(", ").append(details);
-			this.details = sb.toString();
+			if (details != null) {
+				StringBuilder sb = new StringBuilder(this.details.length()+details.length()+2);
+				sb.append(this.details).append(", ").append(details);
+				this.details = sb.toString(); 
+			} 
 		}
 
 		/**

Modified: pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/DeviceColorSpaceHelper.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/DeviceColorSpaceHelper.java?rev=1301936&r1=1301935&r2=1301936&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/DeviceColorSpaceHelper.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/DeviceColorSpaceHelper.java Sat Mar 17 13:31:32 2012
@@ -59,28 +59,7 @@ public class DeviceColorSpaceHelper exte
         .add(new ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, "Pattern ColorSpace is forbidden"));
     return false;
   }
-
-  /**
-   * This method updates the given list with a ValidationError
-   * (ERROR_GRAPHIC_INVALID_PATTERN_COLOR_SPACE_FORBIDDEN) and returns false.
-   */
-  protected boolean processCalibratedColorSpace(List<ValidationError> result) {
-    result
-        .add(new ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, "Calibrated ColorSpace is forbidden"));
-    return false;
-  }
-
-  /**
-   * This method updates the given list with a ValidationError
-   * (ERROR_GRAPHIC_INVALID_PATTERN_COLOR_SPACE_FORBIDDEN) and returns false.
-   */
-  protected boolean processICCBasedColorSpace(PDColorSpace pdcs,
-      List<ValidationError> result) {
-    result
-        .add(new ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, "ICCBased ColorSpace is forbidden"));
-    return false;
-  }
-
+  
   /**
    * This method updates the given list with a ValidationError
    * (ERROR_GRAPHIC_INVALID_PATTERN_COLOR_SPACE_FORBIDDEN) and returns false.
@@ -102,26 +81,17 @@ public class DeviceColorSpaceHelper exte
       List<ValidationError> result) {
     PDIndexed indexed = (PDIndexed) pdcs;
     try {
-      if (iccpw == null) {
-        result.add(new ValidationError(
-            ERROR_GRAPHIC_INVALID_COLOR_SPACE_MISSING, "DestOutputProfile is missing"));
-        return false;
-      }
-
       PDColorSpace based = indexed.getBaseColorSpace();
       ColorSpaces cs = ColorSpaces.valueOf(based.getName());
-      switch (cs) {
-      case DeviceCMYK:
-      case DeviceCMYK_SHORT:
-      case DeviceRGB:
-      case DeviceRGB_SHORT:
-      case DeviceGray:
-      case DeviceGray_SHORT:
-        return processAllColorSpace(based, result);
-      default:
-        result.add(new ValidationError(
-            ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, cs.getLabel() + " ColorSpace is forbidden"));
+      switch (cs) {      
+      case Indexed:
+    	case Indexed_SHORT:
+    	case Pattern:
+    		result.add(new ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, cs.getLabel() + " ColorSpace is forbidden"));
         return false;
+        
+    	default:
+        return processAllColorSpace(based, result);
       }
 
     } catch (IOException e) {
@@ -129,15 +99,4 @@ public class DeviceColorSpaceHelper exte
       return false;
     }
   }
-
-  /**
-   * This method updates the given list with a ValidationError
-   * (ERROR_GRAPHIC_INVALID_PATTERN_COLOR_SPACE_FORBIDDEN) and returns false.
-   */
-  protected boolean processSeparationColorSpace(PDColorSpace pdcs,
-      List<ValidationError> result) {
-    result
-        .add(new ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_FORBIDDEN, "Separation ColorSpace is forbidden"));
-    return false;
-  }
 }

Modified: pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/StandardColorSpaceHelper.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/StandardColorSpaceHelper.java?rev=1301936&r1=1301935&r2=1301936&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/StandardColorSpaceHelper.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/padaf/preflight/graphics/color/StandardColorSpaceHelper.java Sat Mar 17 13:31:32 2012
@@ -376,12 +376,6 @@ public class StandardColorSpaceHelper im
 			List<ValidationError> result) {
 		PDIndexed indexed = (PDIndexed) pdcs;
 		try {
-			if (iccpw == null) {
-				result.add(new ValidationError(
-						ERROR_GRAPHIC_INVALID_COLOR_SPACE_MISSING, "DestOutputProfile is missing"));
-				return false;
-			}
-
 			PDColorSpace based = indexed.getBaseColorSpace();
 			ColorSpaces cs = ColorSpaces.valueOf(based.getName());
 			if (cs == ColorSpaces.Indexed || cs == ColorSpaces.Indexed_SHORT) {

Modified: pdfbox/trunk/preflight/src/test/resources/expected_errors.txt
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/test/resources/expected_errors.txt?rev=1301936&r1=1301935&r2=1301936&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/test/resources/expected_errors.txt (original)
+++ pdfbox/trunk/preflight/src/test/resources/expected_errors.txt Sat Mar 17 13:31:32 2012
@@ -77,8 +77,8 @@ isartor-6-2-3-3-t04-fail-a.pdf=2.4.3
 isartor-6-2-3-3-t04-fail-b.pdf=2.4.3
 isartor-6-2-3-3-t04-fail-c.pdf=2.4.3
 isartor-6-2-3-3-t04-fail-d.pdf=2.4.3
-isartor-6-2-3-3-t05-fail-a.pdf=2.4.3
-isartor-6-2-3-3-t05-fail-b.pdf=2.4.3
+isartor-6-2-3-3-t05-fail-a.pdf=2.4.1 // before was 2.4.3 but now the IndexColorSpace doesn't check the ICC, it is delegated to the based colorspace helper  
+isartor-6-2-3-3-t05-fail-b.pdf=2.4.1 // before was 2.4.3 but now the IndexColorSpace doesn't check the ICC, it is delegated to the based colorspace helper
 isartor-6-2-3-4-t01-fail-a.pdf=2.4.3
 isartor-6-2-3-4-t01-fail-b.pdf=2.4.3
 isartor-6-2-4-t01-fail-a.pdf=2.3