org.apache.pdfbox.pdmodel.graphics.color
Class PDDeviceN

java.lang.Object
  extended by org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace
      extended by org.apache.pdfbox.pdmodel.graphics.color.PDDeviceN
All Implemented Interfaces:
COSObjectable

public class PDDeviceN
extends PDColorSpace

This class represents a DeviceN color space.

Version:
$Revision: 1.4 $
Author:
Ben Litchfield

Field Summary
static String NAME
          The name of this color space.
 
Constructor Summary
PDDeviceN()
          Constructor.
PDDeviceN(COSArray separation)
          Constructor.
 
Method Summary
 COSArray calculateColorValues(List<COSBase> tintValues)
          Returns the components of the color in the alternate colorspace for the given tint value.
 ColorModel createColorModel(int bpc)
          Create a Java color model for this colorspace.
protected  ColorSpace createColorSpace()
          Create a Java colorspace for this colorspace.
 PDColorSpace getAlternateColorSpace()
          This will get the alternate color space for this separation.
 PDDeviceNAttributes getAttributes()
          This will get the attributes that are associated with the deviceN color space.
 List<COSBase> getColorantNames()
          This will get the colorant names.
 String getName()
          This will return the name of the color space.
 int getNumberOfComponents()
          This will get the number of components that this color space is made up of.
 PDFunction getTintTransform()
          This will get the tint transform function.
 void setAlternateColorSpace(PDColorSpace cs)
          This will set the alternate color space.
 void setAttributes(PDDeviceNAttributes attributes)
          This will set the color space attributes.
 void setColorantNames(List<COSBase> names)
          This will set the list of colorants.
 void setTintTransform(PDFunction tint)
          This will set the tint transform function.
 
Methods inherited from class org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace
getCOSObject, getJavaColorSpace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NAME

public static final String NAME
The name of this color space.

See Also:
Constant Field Values
Constructor Detail

PDDeviceN

public PDDeviceN()
Constructor.


PDDeviceN

public PDDeviceN(COSArray separation)
Constructor.

Parameters:
separation - The array containing all separation information.
Method Detail

getName

public String getName()
This will return the name of the color space. For a PDSeparation object this will always return "Separation"

Specified by:
getName in class PDColorSpace
Returns:
The name of the color space.

getNumberOfComponents

public int getNumberOfComponents()
                          throws IOException
This will get the number of components that this color space is made up of.

Specified by:
getNumberOfComponents in class PDColorSpace
Returns:
The number of components in this color space.
Throws:
IOException - If there is an error getting the number of color components.

createColorSpace

protected ColorSpace createColorSpace()
                               throws IOException
Create a Java colorspace for this colorspace.

Specified by:
createColorSpace in class PDColorSpace
Returns:
A color space that can be used for Java AWT operations.
Throws:
IOException - If there is an error creating the color space.

createColorModel

public ColorModel createColorModel(int bpc)
                            throws IOException
Create a Java color model for this colorspace.

Specified by:
createColorModel in class PDColorSpace
Parameters:
bpc - The number of bits per component.
Returns:
A color model that can be used for Java AWT operations.
Throws:
IOException - If there is an error creating the color model.

getColorantNames

public List<COSBase> getColorantNames()
This will get the colorant names. A list of string objects.

Returns:
A list of colorants

setColorantNames

public void setColorantNames(List<COSBase> names)
This will set the list of colorants.

Parameters:
names - The list of colorant names.

getAlternateColorSpace

public PDColorSpace getAlternateColorSpace()
                                    throws IOException
This will get the alternate color space for this separation.

Returns:
The alternate color space.
Throws:
IOException - If there is an error getting the alternate color space.

setAlternateColorSpace

public void setAlternateColorSpace(PDColorSpace cs)
This will set the alternate color space.

Parameters:
cs - The alternate color space.

getTintTransform

public PDFunction getTintTransform()
                            throws IOException
This will get the tint transform function.

Returns:
The tint transform function.
Throws:
IOException - if there is an error creating the function.

setTintTransform

public void setTintTransform(PDFunction tint)
This will set the tint transform function.

Parameters:
tint - The tint transform function.

getAttributes

public PDDeviceNAttributes getAttributes()
This will get the attributes that are associated with the deviceN color space.

Returns:
The DeviceN attributes.

setAttributes

public void setAttributes(PDDeviceNAttributes attributes)
This will set the color space attributes. If null is passed in then all attribute will be removed.

Parameters:
attributes - The color space attributes.

calculateColorValues

public COSArray calculateColorValues(List<COSBase> tintValues)
                              throws IOException
Returns the components of the color in the alternate colorspace for the given tint value.

Parameters:
tintValues - a list containing the tint values
Returns:
COSArray with the color components
Throws:
IOException - If the tint function is not supported