You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ju...@apache.org on 2009/09/14 12:11:16 UTC

svn commit: r814554 - in /incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox: pdfviewer/ pdmodel/documentinterchange/prepress/ pdmodel/graphics/ pdmodel/graphics/color/ pdmodel/graphics/xobject/ pdmodel/interactive/documentnavigation/outline/ util/...

Author: jukka
Date: Mon Sep 14 10:11:15 2009
New Revision: 814554

URL: http://svn.apache.org/viewvc?rev=814554&view=rev
Log:
PDFBOX-511: JVM crash in PDColorSpaceInstance.createColor()

Refactoring to reduce the number createColor() calls:

Rename PDColorSpaceInstance to PDColorState to better indicate the purpose of the class and to use the same naming convention as with PDGraphicsState and PDTextState.

Added:
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorState.java
      - copied, changed from r814536, incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorSpaceInstance.java
Removed:
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorSpaceInstance.java
Modified:
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdfviewer/PageDrawer.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/prepress/PDBoxStyle.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDGraphicsState.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDXObjectImage.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/interactive/documentnavigation/outline/PDOutlineItem.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCMYKColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCalRGBColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColorSpace.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingGrayColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingICCBasedColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingRGBColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingSeparation.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCMYKColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCalRGBColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColorSpace.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingGrayColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingICCBasedColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingRGBColor.java
    incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingSeparation.java

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdfviewer/PageDrawer.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdfviewer/PageDrawer.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdfviewer/PageDrawer.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdfviewer/PageDrawer.java Mon Sep 14 10:11:15 2009
@@ -132,12 +132,12 @@
         {
             if( this.getGraphicsState().getTextState().getRenderingMode() == PDTextState.RENDERING_MODE_FILL_TEXT )
             {
-                graphics.setColor( this.getGraphicsState().getNonStrokingColorSpace().createColor() );
+                graphics.setColor( this.getGraphicsState().getNonStrokingColor().createColor() );
             }
             else if( this.getGraphicsState().getTextState().getRenderingMode() 
                         == PDTextState.RENDERING_MODE_STROKE_TEXT )
             {
-                graphics.setColor( this.getGraphicsState().getStrokingColorSpace().createColor() );
+                graphics.setColor( this.getGraphicsState().getStrokingColor().createColor() );
             }
             else
             {
@@ -145,7 +145,7 @@
                 logger().warn("Unsupported RenderingMode "+this.getGraphicsState().getTextState().getRenderingMode()
                             +" in PageDrawer.processTextPosition()"
                             + "Using RenderingMode "+PDTextState.RENDERING_MODE_FILL_TEXT+" instead");
-                graphics.setColor( this.getGraphicsState().getNonStrokingColorSpace().createColor() );
+                graphics.setColor( this.getGraphicsState().getNonStrokingColor().createColor() );
             }
             PDFont font = text.getFont();
 
@@ -247,7 +247,7 @@
      */
     public void fillPath(int windingRule) throws IOException
     {
-        graphics.setColor( getGraphicsState().getNonStrokingColorSpace().createColor() );
+        graphics.setColor( getGraphicsState().getNonStrokingColor().createColor() );
         getLinePath().setWindingRule(windingRule);
         graphics.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF );
         graphics.setClip(getGraphicsState().getCurrentClippingPath());
@@ -274,7 +274,7 @@
      */
     public void strokePath() throws IOException
     {
-        graphics.setColor( getGraphicsState().getStrokingColorSpace().createColor() ); 
+        graphics.setColor( getGraphicsState().getStrokingColor().createColor() ); 
         graphics.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF );
         graphics.setClip(getGraphicsState().getCurrentClippingPath());
         GeneralPath path = getLinePath();

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/prepress/PDBoxStyle.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/prepress/PDBoxStyle.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/prepress/PDBoxStyle.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/prepress/PDBoxStyle.java Mon Sep 14 10:11:15 2009
@@ -22,7 +22,7 @@
 import org.apache.pdfbox.cos.COSInteger;
 import org.apache.pdfbox.pdmodel.common.COSObjectable;
 import org.apache.pdfbox.pdmodel.graphics.PDLineDashPattern;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
 
 /**
@@ -90,7 +90,7 @@
      *
      *@return The guideline color.
      */
-    public PDColorSpaceInstance getGuidelineColor()
+    public PDColorState getGuidelineColor()
     {
         COSArray colorValues = (COSArray)dictionary.getDictionaryObject( "C" );
         if( colorValues == null )
@@ -101,7 +101,7 @@
             colorValues.add( COSInteger.ZERO );
             dictionary.setItem( "C", colorValues );
         }
-        PDColorSpaceInstance instance = new PDColorSpaceInstance( colorValues );
+        PDColorState instance = new PDColorState( colorValues );
         instance.setColorSpace( PDDeviceRGB.INSTANCE );
         return instance;
     }
@@ -112,7 +112,7 @@
      *
      * @param color The new colorspace value.
      */
-    public void setGuideLineColor( PDColorSpaceInstance color )
+    public void setGuideLineColor( PDColorState color )
     {
         COSArray values = null;
         if( color != null )

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDGraphicsState.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDGraphicsState.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDGraphicsState.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDGraphicsState.java Mon Sep 14 10:11:15 2009
@@ -19,11 +19,9 @@
 import java.awt.Shape;
 import java.awt.geom.GeneralPath;
 
-import org.apache.pdfbox.util.Matrix;
-
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.text.PDTextState;
-
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.util.Matrix;
 
 /**
  * This class will hold the current state of the graphics parameters when executing a
@@ -39,8 +37,8 @@
     //Here are some attributes of the Graphics state, but have not been created yet.
     //
     //clippingPath
-    private PDColorSpaceInstance strokingColorSpace = new PDColorSpaceInstance();
-    private PDColorSpaceInstance nonStrokingColorSpace = new PDColorSpaceInstance();
+    private PDColorState strokingColor = new PDColorState();
+    private PDColorState nonStrokingColor = new PDColorState();
     private PDTextState textState = new PDTextState();
     private double lineWidth = 0;
     private int lineCap = 0;
@@ -379,8 +377,8 @@
             clone = (PDGraphicsState)super.clone();
             clone.setTextState( (PDTextState)textState.clone() );
             clone.setCurrentTransformationMatrix( currentTransformationMatrix.copy() );
-            clone.setStrokingColorSpace( (PDColorSpaceInstance)strokingColorSpace.clone() );
-            clone.setNonStrokingColorSpace( (PDColorSpaceInstance)nonStrokingColorSpace.clone() );
+            clone.strokingColor = (PDColorState)strokingColor.clone();
+            clone.nonStrokingColor = ((PDColorState)nonStrokingColor.clone());
             if( lineDashPattern != null )
             {
                 clone.setLineDashPattern( (PDLineDashPattern)lineDashPattern.clone() );
@@ -398,46 +396,25 @@
     }
 
     /**
-     * This will get the current stroking colorspace.
-     *
-     * @return The current stroking colorspace.
-     */
-    public PDColorSpaceInstance getStrokingColorSpace()
-    {
-        return strokingColorSpace;
-    }
-
-    /**
-     * This will set the current stroking colorspace.
-     *
-     * @param value The new stroking colorspace instance.
-     */
-    public void setStrokingColorSpace(PDColorSpaceInstance value)
-    {
-        strokingColorSpace = value;
-    }
-
-    /**
-     * This will get the nonstroking color space instance.
+     * Returns the stroking color state.
      *
-     * @return The colorspace instance.
+     * @return stroking color state
      */
-    public PDColorSpaceInstance getNonStrokingColorSpace()
+    public PDColorState getStrokingColor()
     {
-        return nonStrokingColorSpace;
+        return strokingColor;
     }
 
     /**
-     * This will set the non-stroking colorspace instance.
+     * Returns the non-stroking color state.
      *
-     * @param value The non-stroking colorspace instance.
+     * @return non-stroking color state
      */
-    public void setNonStrokingColorSpace(PDColorSpaceInstance value)
+    public PDColorState getNonStrokingColor()
     {
-        nonStrokingColorSpace = value;
+        return nonStrokingColor;
     }
 
-   
     /**
      * This will set the current clipping path.
      *

Copied: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorState.java (from r814536, incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorSpaceInstance.java)
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorState.java?p2=incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorState.java&p1=incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorSpaceInstance.java&r1=814536&r2=814554&rev=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorSpaceInstance.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDColorState.java Mon Sep 14 10:11:15 2009
@@ -30,7 +30,7 @@
  * @author <a href="mailto:ben@benlitchfield.com">Ben Litchfield</a>
  * @version $Revision: 1.7 $
  */
-public class PDColorSpaceInstance extends LoggingObject implements Cloneable
+public class PDColorState extends LoggingObject implements Cloneable
 {
 
     /**
@@ -70,7 +70,7 @@
      * Default constructor.
      *
      */
-    public PDColorSpaceInstance()
+    public PDColorState()
     {
         setColorSpaceValue( new float[] {0});
     }
@@ -80,7 +80,7 @@
      */
     public Object clone()
     {
-        PDColorSpaceInstance retval = new PDColorSpaceInstance();
+        PDColorState retval = new PDColorState();
         retval.colorSpace = this.colorSpace;
         retval.colorSpaceValue.clear();
         retval.colorSpaceValue.addAll( this.colorSpaceValue );
@@ -154,7 +154,7 @@
      *
      * @param csValues The color space values.
      */
-    public PDColorSpaceInstance( COSArray csValues )
+    public PDColorState( COSArray csValues )
     {
         colorSpaceValue = csValues;
     }

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDXObjectImage.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDXObjectImage.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDXObjectImage.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDXObjectImage.java Mon Sep 14 10:11:15 2009
@@ -240,7 +240,7 @@
             else if (getImageMask())
             {
                 //Stencil Mask branch.  Section 4.8.5 of the reference, page 350 in version 1.7.
-                retval = graphicsState.getNonStrokingColorSpace().getColorSpace();
+                retval = graphicsState.getNonStrokingColor().getColorSpace();
                 logger().info("Stencil Mask branch returning " + retval.toString());
                 //throw new IOException("Trace the Stencil Mask!!!!");
             

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/interactive/documentnavigation/outline/PDOutlineItem.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/interactive/documentnavigation/outline/PDOutlineItem.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/interactive/documentnavigation/outline/PDOutlineItem.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/pdmodel/interactive/documentnavigation/outline/PDOutlineItem.java Mon Sep 14 10:11:15 2009
@@ -29,11 +29,11 @@
 import org.apache.pdfbox.pdmodel.PDDocumentNameDictionary;
 import org.apache.pdfbox.pdmodel.PDPage;
 import org.apache.pdfbox.pdmodel.documentinterchange.logicalstructure.PDStructureElement;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
+import org.apache.pdfbox.pdmodel.interactive.action.PDActionFactory;
 import org.apache.pdfbox.pdmodel.interactive.action.type.PDAction;
 import org.apache.pdfbox.pdmodel.interactive.action.type.PDActionGoTo;
-import org.apache.pdfbox.pdmodel.interactive.action.PDActionFactory;
 import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination;
 import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDNamedDestination;
 import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDPageDestination;
@@ -327,9 +327,9 @@
      *
      * @return The structure element of this node.
      */
-    public PDColorSpaceInstance getTextColor()
+    public PDColorState getTextColor()
     {
-        PDColorSpaceInstance retval = null;
+        PDColorState retval = null;
         COSArray csValues = (COSArray)node.getDictionaryObject( "C" );
         if( csValues == null )
         {
@@ -337,7 +337,7 @@
             csValues.growToSize( 3, new COSFloat( 0 ) );
             node.setItem( "C", csValues );
         }
-        retval = new PDColorSpaceInstance(csValues);
+        retval = new PDColorState(csValues);
         retval.setColorSpace( PDDeviceRGB.INSTANCE );
         return retval;
     }
@@ -347,7 +347,7 @@
      *
      * @param textColor The text color for this node.
      */
-    public void setTextColor( PDColorSpaceInstance textColor )
+    public void setTextColor( PDColorState textColor )
     {
         node.setItem( "C", textColor.getCOSColorSpaceValue() );
     }

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCMYKColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCMYKColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCMYKColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCMYKColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,15 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Set the non stroking color space.</p>
@@ -44,7 +43,7 @@
     public void process(PDFOperator operator, List arguments) throws IOException
     {
         PDColorSpace cs = PDDeviceCMYK.INSTANCE;
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         colorInstance.setColorSpace( cs );
         float[] values = new float[4];
         for( int i=0; i<arguments.size(); i++ )

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCalRGBColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCalRGBColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCalRGBColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingCalRGBColor.java Mon Sep 14 10:11:15 2009
@@ -16,14 +16,13 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
-import org.apache.pdfbox.util.PDFOperator;
 import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
+import org.apache.pdfbox.util.PDFOperator;
 
 /**
  * <p>Set the non stroking color space.</p>
@@ -41,7 +40,7 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         float[] values = new float[3];
         for( int i=0; i<arguments.size(); i++ )
         {

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColor.java Mon Sep 14 10:11:15 2009
@@ -44,7 +44,7 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpace colorSpace = context.getGraphicsState().getNonStrokingColorSpace().getColorSpace();
+        PDColorSpace colorSpace = context.getGraphicsState().getNonStrokingColor().getColorSpace();
         if (colorSpace != null) 
         {
             OperatorProcessor newOperator = null;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColorSpace.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColorSpace.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColorSpace.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingColorSpace.java Mon Sep 14 10:11:15 2009
@@ -16,18 +16,16 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
-import java.util.Map;
 
 import org.apache.pdfbox.cos.COSName;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceFactory;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Set the non stroking color space.</p>
@@ -50,7 +48,7 @@
 //      (PDF 1.1) Set color space for stroking operations
         COSName name = (COSName)arguments.get( 0 );
         PDColorSpace cs = PDColorSpaceFactory.createColorSpace( name, context.getColorSpaces() );
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         colorInstance.setColorSpace( cs );
         int numComponents = cs.getNumberOfComponents();
         float[] values = EMPTY_FLOAT_ARRAY;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingGrayColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingGrayColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingGrayColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingGrayColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,15 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Set the non stroking color space.</p>
@@ -44,7 +43,7 @@
     public void process(PDFOperator operator, List arguments) throws IOException
     {
         PDColorSpace cs = new PDDeviceGray();
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         colorInstance.setColorSpace( cs );
         float[] values = new float[1];
         if( arguments.size() >= 1 )

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingICCBasedColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingICCBasedColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingICCBasedColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingICCBasedColor.java Mon Sep 14 10:11:15 2009
@@ -16,15 +16,14 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * 
@@ -41,7 +40,7 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         PDColorSpace cs = colorInstance.getColorSpace();
         int numberOfComponents = cs.getNumberOfComponents();
         float[] values = new float[numberOfComponents];

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingRGBColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingRGBColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingRGBColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingRGBColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,15 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Set the non stroking color space.</p>
@@ -44,7 +43,7 @@
     public void process(PDFOperator operator, List arguments) throws IOException
     {
         PDColorSpace cs = PDDeviceRGB.INSTANCE;
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         colorInstance.setColorSpace( cs );
         float[] values = new float[3];
         for( int i=0; i<arguments.size(); i++ )

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingSeparation.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingSeparation.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingSeparation.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetNonStrokingSeparation.java Mon Sep 14 10:11:15 2009
@@ -16,20 +16,19 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
+import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
-import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.pdmodel.graphics.color.PDICCBased;
-import org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB;
 import org.apache.pdfbox.pdmodel.graphics.color.PDSeparation;
 import org.apache.pdfbox.util.PDFOperator;
 
-import java.io.IOException;
-
 /**
  * 
  * @author <a href="mailto:WilliamstonConsulting@GMail.com">Daniel Wilson</a>
@@ -45,7 +44,7 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getNonStrokingColorSpace();
+        PDColorState colorInstance = context.getGraphicsState().getNonStrokingColor();
         PDColorSpace colorSpace = colorInstance.getColorSpace();
         List argList = arguments;
         

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCMYKColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCMYKColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCMYKColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCMYKColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,14 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Structal modification of the PDFEngine class :
@@ -45,15 +43,14 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpace cs = PDDeviceCMYK.INSTANCE;
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        colorInstance.setColorSpace( cs );
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        color.setColorSpace( PDDeviceCMYK.INSTANCE );
         float[] values = new float[4];
         for( int i=0; i<arguments.size(); i++ )
         {
             values[i] = ((COSNumber)arguments.get( i )).floatValue();
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
 
         if (context instanceof PageDrawer)
         {

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCalRGBColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCalRGBColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCalRGBColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingCalRGBColor.java Mon Sep 14 10:11:15 2009
@@ -16,18 +16,17 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
-import org.apache.pdfbox.util.PDFOperator;
 import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
+import org.apache.pdfbox.util.PDFOperator;
 
 /**
- * <p>Structal modification of the PDFEngine class :
- * the long sequence of conditions in processOperator is remplaced by
+ * <p>Structural modification of the PDFEngine class :
+ * the long sequence of conditions in processOperator is replaced by
  * this strategy pattern.</p>
  *
  * @author <a href="mailto:ben@benlitchfield.com">Ben Litchfield</a>
@@ -43,13 +42,13 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
+        PDColorState color = context.getGraphicsState().getStrokingColor();
         float[] values = new float[3];
         for( int i=0; i<arguments.size(); i++ )
         {
             values[i] = ((COSNumber)arguments.get( i )).floatValue();
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
         if (context instanceof PageDrawer)
         {
             PageDrawer drawer = (PageDrawer)context;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColor.java Mon Sep 14 10:11:15 2009
@@ -44,7 +44,7 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpace colorSpace = context.getGraphicsState().getStrokingColorSpace().getColorSpace();
+        PDColorSpace colorSpace = context.getGraphicsState().getStrokingColor().getColorSpace();
         if (colorSpace != null) 
         {
             OperatorProcessor newOperator = null;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColorSpace.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColorSpace.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColorSpace.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingColorSpace.java Mon Sep 14 10:11:15 2009
@@ -16,18 +16,16 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
-import java.util.Map;
 
 import org.apache.pdfbox.cos.COSName;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceFactory;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Structal modification of the PDFEngine class :
@@ -53,8 +51,8 @@
         //(PDF 1.1) Set color space for stroking operations
         COSName name = (COSName)arguments.get( 0 );
         PDColorSpace cs = PDColorSpaceFactory.createColorSpace( name, context.getColorSpaces() );
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        colorInstance.setColorSpace( cs );
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        color.setColorSpace( cs );
         int numComponents = cs.getNumberOfComponents();
         float[] values = EMPTY_FLOAT_ARRAY;
         if( numComponents >= 0 )
@@ -69,7 +67,7 @@
                 values[3] = 1f;
             }
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
 
         if (context instanceof PageDrawer)
         {

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingGrayColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingGrayColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingGrayColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingGrayColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,15 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Structal modification of the PDFEngine class :
@@ -45,9 +44,8 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpace cs = new PDDeviceGray();
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        colorInstance.setColorSpace( cs );
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        color.setColorSpace( new PDDeviceGray() );
         float[] values = new float[1];
         if( arguments.size() >= 1 )
         {
@@ -57,7 +55,7 @@
         {
             throw new IOException( "Error: Expected at least one argument when setting non stroking gray color");
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
         if (context instanceof PageDrawer)
         {
             PageDrawer drawer = (PageDrawer)context;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingICCBasedColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingICCBasedColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingICCBasedColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingICCBasedColor.java Mon Sep 14 10:11:15 2009
@@ -16,15 +16,14 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * 
@@ -41,15 +40,15 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        PDColorSpace cs = colorInstance.getColorSpace();
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        PDColorSpace cs = color.getColorSpace();
         int numberOfComponents = cs.getNumberOfComponents();
         float[] values = new float[numberOfComponents];
         for( int i=0; i<numberOfComponents; i++ )
         {
             values[i] = ((COSNumber)arguments.get( i )).floatValue();
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
         
         if (context instanceof PageDrawer)
         {

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingRGBColor.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingRGBColor.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingRGBColor.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingRGBColor.java Mon Sep 14 10:11:15 2009
@@ -16,16 +16,15 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
 import org.apache.pdfbox.cos.COSNumber;
+import org.apache.pdfbox.pdfviewer.PageDrawer;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
 import org.apache.pdfbox.util.PDFOperator;
-import org.apache.pdfbox.pdfviewer.PageDrawer;
-
-import java.io.IOException;
 
 /**
  * <p>Structal modification of the PDFEngine class :
@@ -45,15 +44,14 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpace cs = PDDeviceRGB.INSTANCE;
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        colorInstance.setColorSpace( cs );
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        color.setColorSpace( PDDeviceRGB.INSTANCE );
         float[] values = new float[3];
         for( int i=0; i<arguments.size(); i++ )
         {
             values[i] = ((COSNumber)arguments.get( i )).floatValue();
         }
-        colorInstance.setColorSpaceValue( values );
+        color.setColorSpaceValue( values );
         if (context instanceof PageDrawer)
         {
             PageDrawer drawer = (PageDrawer)context;

Modified: incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingSeparation.java
URL: http://svn.apache.org/viewvc/incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingSeparation.java?rev=814554&r1=814553&r2=814554&view=diff
==============================================================================
--- incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingSeparation.java (original)
+++ incubator/pdfbox/trunk/src/main/java/org/apache/pdfbox/util/operator/SetStrokingSeparation.java Mon Sep 14 10:11:15 2009
@@ -16,20 +16,19 @@
  */
 package org.apache.pdfbox.util.operator;
 
+import java.io.IOException;
 import java.util.List;
 
-import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpaceInstance;
+import org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB;
 import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
+import org.apache.pdfbox.pdmodel.graphics.color.PDColorState;
+import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB;
-import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.pdmodel.graphics.color.PDICCBased;
-import org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB;
 import org.apache.pdfbox.pdmodel.graphics.color.PDSeparation;
 import org.apache.pdfbox.util.PDFOperator;
 
-import java.io.IOException;
-
 /**
  * 
  * @author <a href="mailto:WilliamstonConsulting@GMail.com">Daniel Wilson</a>
@@ -45,8 +44,8 @@
      */
     public void process(PDFOperator operator, List arguments) throws IOException
     {
-        PDColorSpaceInstance colorInstance = context.getGraphicsState().getStrokingColorSpace();
-        PDColorSpace colorSpace = colorInstance.getColorSpace();
+        PDColorState color = context.getGraphicsState().getStrokingColor();
+        PDColorSpace colorSpace = color.getColorSpace();
         logger().info("handling color space " + colorSpace.toString());
         if (colorSpace instanceof PDSeparation)
         {