Generated by
JDiff

java.awt.color Documentation Differences

This file contains all the changes in documentation in the package java.awt.color as colored differences. Deletions are shown like this, and additions are shown like this.
If no deletions or additions are shown in an entry, the HTML tags will be what has changed. The new HTML tags are shown in the differences. If no documentation existed, and then some was added in a later version, this change is noted in the appropriate class pages of differences, but the change is not shown on this page. Only changes in existing text are shown here. Similarly, documentation which was inherited from another class or interface is not shown here.
Note that an HTML error in the new documentation may cause the display of other documentation changes to be presented incorrectly. For instance, failure to close a <code> tag will cause all subsequent paragraphs to be displayed differently.

Class CMMException, constructor CMMException(String)

Constructs a CMMException with the specified detail message. @param s the specified detail message

Class ColorSpace

This abstract class is used to serve as a color space tag to identify the specific color space of a Color object or via a ColorModel object of an Image a BufferedImage or a GraphicsDevice. It contains methods that transform Colorscolors in a specific color space to/from sRGB and to/from a well-defined CIEXYZ color space.

For purposes of the methods in this class colors are represented as arrays of color components represented as floats in a normalized range defined by each ColorSpace. For many ColorSpaces (e.g. sRGB) this range is 0.0 to 1.0. However some ColorSpaces have components whose values have a different range. Methods are provided to inquire per component minimum and maximum normalized values.

Several variables are defined for purposes of referring to color space types (e.g. TYPE_RGB TYPE_XYZ etc.) and to refer to specific color spaces (e.g. CS_sRGB and CS_CIEXYZ). sRGB is a proposed standard RGB color space. For more information see http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html .

The purpose of the methods to transform to/from the well-defined CIEXYZ color space is to support conversions between any two color spaces at a reasonably high degree of accuracy. It is expected that particular implementations of subclasses of ColorSpace (e.g. ICC_ColorSpace) will support high performance conversion based on underlying platform color management systems.

The CS_CIEXYZ space used by the toCIEXYZ/fromCIEXYZ methods can be described as follows:

   CIEXYZ   viewing illuminance: 200 lux   viewing white point: CIE D50   media white point: "that of a perfectly reflecting diffuser" -- D50   media black point: 0 lux or 0 Reflectance   flare: 1 percent   surround: 20percent of the media white point   media description: reflection print (i.e. RLAB Hunt viewing media)   note: For developers creating an ICC profile for this conversion   space the following is applicable. Use a simple Von Kries   white point adaptation folded into the 3X3 matrix parameters   and fold the flare and surround effects into the three   one-dimensional lookup tables (assuming one uses the minimal   model for monitors). 

@see ICC_ColorSpace @version 10 Feb 1997

Class ColorSpace, constructor ColorSpace(int, int)

Constructs a ColorSpace object given a color space type and the number of components. @param type One of the ColorSpace type constants. @param numcomponents The number of components in the color space.
Class ColorSpace, float[] fromCIEXYZ(float[])

Transforms a color value assumed to be in the CS_CIEXYZ conversion color space into this ColorSpace.

This method transforms color values using relative colorimetry as defined by the International Color Consortium standard. This means that the XYZ argument values taken by this method are represented relative to the D50 white point of the CS_CIEXYZ color space. This representation is useful in a two-step color conversion process in which colors are transformed from an input color space to CS_CIEXYZ and then to an output color space. The color values returned by this method are not those that would produce the XYZ value passed to the method when measured by a colorimeter. If you have XYZ values corresponding to measurements made using current CIE recommended practices they must be converted to D50 relative values before being passed to this method. See the fromCIEXYZ method of ICC_ColorSpace for further information.

@param colorvalue a float array with length of at least 3 @return a float array with length equal to the number of components in this ColorSpace @throws ArrayIndexOutOfBoundsException if array length is not at least 3.

Class ColorSpace, float[] fromRGB(float[])

Transforms a color value assumed to be in the default CS_sRGB color space into this ColorSpace.

This method transforms color values using algorithms designed to produce the best perceptual match between input and output colors. In order to do colorimetric conversion of color values you should use the toCIEXYZ method of the CS_sRGB color space to first convert from the input color space to the CS_CIEXYZ color space and then use the fromCIEXYZ method of this color space to convert from CS_CIEXYZ to the output color space. See toCIEXYZ and fromCIEXYZ for further information.

@param rgbvalue a float array with length of at least 3 @return a float array with length equal to the number of components in this ColorSpace @throws ArrayIndexOutOfBoundsException if array length is not at least 3.

Class ColorSpace, ColorSpace getInstance(int)

Returns a ColorSpace representing one of the specific predefined color spaces. @param colorspace a specific color space identified by one of the predefined class constants (e.g. CS_sRGB CS_LINEAR_RGB CS_CIEXYZ CS_GRAY or CS_PYCC) @return The requested ColorSpace object.
Class ColorSpace, String getName(int)

Returns the name of the component given the component index. @param idx The component index. @return The name of the component at the specified index.
Class ColorSpace, int getNumComponents()

Returns the number of components of this ColorSpace. @return The number of components in this ColorSpace.
Class ColorSpace, int getType()

Returns the color space type of this ColorSpace (for example TYPE_RGB TYPE_XYZ ...). The type defines the number of components of the color space and the interpretation e.g. TYPE_RGB identifies a color space with three components - red green and blue. It does not define the particular color characteristics of the space e.g. the chromaticities of the primaries. @return The type constant that represents the type of this ColorSpace.
Class ColorSpace, boolean isCS_sRGB()

Returns true if the ColorSpace is CS_sRGB. @return true if this is a CS_sRGB color space false if it is not.
Class ColorSpace, float[] toCIEXYZ(float[])

Transforms a color value assumed to be in this ColorSpace into the CS_CIEXYZ conversion color space.

This method transforms color values using relative colorimetry as defined by the International Color Consortium standard. This means that the XYZ values returned by this method are represented relative to the D50 white point of the CS_CIEXYZ color space. This representation is useful in a two-step color conversion process in which colors are transformed from an input color space to CS_CIEXYZ and then to an output color space. This representation is not the same as the XYZ values that would be measured from the given color value by a colorimeter. A further transformation is necessary to compute the XYZ values that would be measured using current CIE recommended practices. See the toCIEXYZ method of ICC_ColorSpace for further information.

@param colorvalue a float array with length of at least the number of components in this ColorSpace @return a float array of length 3 @throws ArrayIndexOutOfBoundsException if array length is not at least the number of components in this ColorSpace.

Class ColorSpace, float[] toRGB(float[])

Transforms a color value assumed to be in this ColorSpace into a value in the default CS_sRGB color space.

This method transforms color values using algorithms designed to produce the best perceptual match between input and output colors. In order to do colorimetric conversion of color values you should use the toCIEXYZ method of this color space to first convert from the input color space to the CS_CIEXYZ color space and then use the fromCIEXYZ method of the CS_sRGB color space to convert from CS_CIEXYZ to the output color space. See toCIEXYZ and fromCIEXYZ for further information.

@param colorvalue a float array with length of at least the number of components in this ColorSpace @return a float array of length 3 @throws ArrayIndexOutOfBoundsException if array length is not at least the number of components in this ColorSpace.


Class ICC_ColorSpace

AnThe ICC_ColorSpace class is an implementation of the abstract ColorSpace class. This representation of device independent and device dependent color spaces is based on the International Color Consortium Specification ICC.1:1998-09 File Format for Color Profiles September 1998 and the addendum ICC.1A:1999-04 April 1999 to that specification (see http://www.color.org).

Typically a Color or ColorModel would be associated with an ICC Profile which is either an input display or output profile (see the ICC specification). There are other types of ICC Profiles e.g. abstract profiles device link profiles and named color profiles which do not contain information appropriate for representing the color space of a color image or device (see ICC_Profile). Attempting to create an ICC_ColorSpace object from an inappropriate ICC Profile is an error.

ICC Profiles represent transformations from the color space of the profile (e.g. a monitor) to a Profile Connection Space (PCS). Profiles of interest for tagging images or colors have a PCS which is one of the device independent spaces (one CIEXYZ space and two CIELab spaces) defined in the ICC Profile Format Specification. Most profiles of interest either have invertible transformations or explicitly specify transformations going both directions. Should an ICC_ColorSpace object be used in a way requiring a conversion from PCS to the profile's native space and there is inadequate data to correctly perform the conversion the ICC_ColorSpace object will produce output in the specified type of color space (e.g. TYPE_RGB TYPE_CMYK etc.) but the specific color values of the output data will be undefined.

The details of this class are not important for simple applets which draw in a default color space or manipulate and display imported images with a known color space. At most such applets would need to get one of the default color spaces via ColorSpace.getInstance().

@see ColorSpace @see ICC_Profile

Class ICC_ColorSpace, constructor ICC_ColorSpace(ICC_Profile)

Constructs a new ICC_ColorSpace from an ICC_Profile object. @param profile the specified ICC_Profile object @exception IllegalArgumentException if profile is inappropriate for representing a ColorSpace.
Class ICC_ColorSpace, float[] fromCIEXYZ(float[])

Transforms a color value assumed to be in the CS_CIEXYZ conversion color space into this ColorSpace.

This method transforms color values using relative colorimetry as defined by the ICC Specification. This means that the XYZ argument values taken by this method are represented relative to the D50 white point of the CS_CIEXYZ color space. This representation is useful in a two-step color conversion process in which colors are transformed from an input color space to CS_CIEXYZ and then to an output color space. The color values returned by this method are not those that would produce the XYZ value passed to the method when measured by a colorimeter. If you have XYZ values corresponding to measurements made using current CIE recommended practices they must be converted to D50 relative values before being passed to this method. The paragraphs below explain this in more detail.

The ICC standard uses a device independent color space (DICS) as the mechanism for converting color from one device to another device. In this architecture colors are converted from the source device's color space to the ICC DICS and then from the ICC DICS to the destination device's color space. The ICC standard defines device profiles which contain transforms which will convert between a device's color space and the ICC DICS. The overall conversion of colors from a source device to colors of a destination device is done by connecting the device-to-DICS transform of the profile for the source device to the DICS-to-device transform of the profile for the destination device. For this reason the ICC DICS is commonly referred to as the profile connection space (PCS). The color space used in the methods toCIEXYZ and fromCIEXYZ is the CIEXYZ PCS defined by the ICC Specification. This is also the color space represented by ColorSpace.CS_CIEXYZ.

The XYZ values of a color are often represented as relative to some white point so the actual meaning of the XYZ values cannot be known without knowing the white point of those values. This is known as relative colorimetry. The PCS uses a white point of D50 so the XYZ values of the PCS are relative to D50. For example white in the PCS will have the XYZ values of D50 which is defined to be X=.9642 Y=1.000 and Z=0.8249. This white point is commonly used for graphic arts applications but others are often used in other applications.

To quantify the color characteristics of a device such as a printer or monitor measurements of XYZ values for particular device colors are typically made. For purposes of this discussion the term device XYZ values is used to mean the XYZ values that would be measured from device colors using current CIE recommended practices.

Converting between device XYZ values and the PCS XYZ values taken as arguments by this method corresponds to converting between the device's color space as represented by CIE colorimetric values and the PCS. There are many factors involved in this process some of which are quite subtle. The most important however is the adjustment made to account for differences between the device's white point and the white point of the PCS. There are many techniques for doing this and it is the subject of much current research and controversy. Some commonly used methods are XYZ scaling the von Kries transform and the Bradford transform. The proper method to use depends upon each particular application.

The simplest method is XYZ scaling. In this method each device XYZ value is converted to a PCS XYZ value by multiplying it by the ratio of the PCS white point (D50) to the device white point.

 Xd Yd Zd are the device XYZ values Xdw Ydw Zdw are the device XYZ white point values Xp Yp Zp are the PCS XYZ values Xd50 Yd50 Zd50 are the PCS XYZ white point values Xp = Xd * (Xd50 / Xdw) Yp = Yd * (Yd50 / Ydw) Zp = Zd * (Zd50 / Zdw) 

Conversion from the PCS to the device would be done by inverting these equations:

 Xd = Xp * (Xdw / Xd50) Yd = Yp * (Ydw / Yd50) Zd = Zp * (Zdw / Zd50) 

Note that the media white point tag in an ICC profile is not the same as the device white point. The media white point tag is expressed in PCS values and is used to represent the difference between the XYZ of device illuminant and the XYZ of the device media when measured under that illuminant. The device white point is expressed as the device XYZ values corresponding to white displayed on the device. For example displaying the RGB color (1.0 1.0 1.0) on an sRGB device will result in a measured device XYZ value of D65. This will not be the same as the media white point tag XYZ value in the ICC profile for an sRGB device.

@param colorvalue a float array with length of at least 3. @return a float array with length equal to the number of components in this ColorSpace. @throws ArrayIndexOutOfBoundsException if array length is not at least 3.

Class ICC_ColorSpace, float[] fromRGB(float[])

Transforms a color value assumed to be in the default CS_sRGB color space into this ColorSpace.

This method transforms color values using algorithms designed to produce the best perceptual match between input and output colors. In order to do colorimetric conversion of color values you should use the toCIEXYZ method of the CS_sRGB color space to first convert from the input color space to the CS_CIEXYZ color space and then use the fromCIEXYZ method of this color space to convert from CS_CIEXYZ to the output color space. See toCIEXYZ and fromCIEXYZ for further information.

@param rgbvalue a float array with length of at least 3. @return a float array with length equal to the number of components in this ColorSpace. @throws ArrayIndexOutOfBoundsException if array length is not at least 3.

Class ICC_ColorSpace, ICC_Profile getProfile()

Returns the ICC_Profile for this ICC_ColorSpace. @return the ICC_Profile for this ICC_ColorSpace.
Class ICC_ColorSpace, float[] toCIEXYZ(float[])

Transforms a color value assumed to be in this ColorSpace into the CS_CIEXYZ conversion color space.

This method transforms color values using relative colorimetry as defined by the ICC Specification. This means that the XYZ values returned by this method are represented relative to the D50 white point of the CS_CIEXYZ color space. This representation is useful in a two-step color conversion process in which colors are transformed from an input color space to CS_CIEXYZ and then to an output color space. This representation is not the same as the XYZ values that would be measured from the given color value by a colorimeter. A further transformation is necessary to compute the XYZ values that would be measured using current CIE recommended practices. The paragraphs below explain this in more detail.

The ICC standard uses a device independent color space (DICS) as the mechanism for converting color from one device to another device. In this architecture colors are converted from the source device's color space to the ICC DICS and then from the ICC DICS to the destination device's color space. The ICC standard defines device profiles which contain transforms which will convert between a device's color space and the ICC DICS. The overall conversion of colors from a source device to colors of a destination device is done by connecting the device-to-DICS transform of the profile for the source device to the DICS-to-device transform of the profile for the destination device. For this reason the ICC DICS is commonly referred to as the profile connection space (PCS). The color space used in the methods toCIEXYZ and fromCIEXYZ is the CIEXYZ PCS defined by the ICC Specification. This is also the color space represented by ColorSpace.CS_CIEXYZ.

The XYZ values of a color are often represented as relative to some white point so the actual meaning of the XYZ values cannot be known without knowing the white point of those values. This is known as relative colorimetry. The PCS uses a white point of D50 so the XYZ values of the PCS are relative to D50. For example white in the PCS will have the XYZ values of D50 which is defined to be X=.9642 Y=1.000 and Z=0.8249. This white point is commonly used for graphic arts applications but others are often used in other applications.

To quantify the color characteristics of a device such as a printer or monitor measurements of XYZ values for particular device colors are typically made. For purposes of this discussion the term device XYZ values is used to mean the XYZ values that would be measured from device colors using current CIE recommended practices.

Converting between device XYZ values and the PCS XYZ values returned by this method corresponds to converting between the device's color space as represented by CIE colorimetric values and the PCS. There are many factors involved in this process some of which are quite subtle. The most important however is the adjustment made to account for differences between the device's white point and the white point of the PCS. There are many techniques for doing this and it is the subject of much current research and controversy. Some commonly used methods are XYZ scaling the von Kries transform and the Bradford transform. The proper method to use depends upon each particular application.

The simplest method is XYZ scaling. In this method each device XYZ value is converted to a PCS XYZ value by multiplying it by the ratio of the PCS white point (D50) to the device white point.

 Xd Yd Zd are the device XYZ values Xdw Ydw Zdw are the device XYZ white point values Xp Yp Zp are the PCS XYZ values Xd50 Yd50 Zd50 are the PCS XYZ white point values Xp = Xd * (Xd50 / Xdw) Yp = Yd * (Yd50 / Ydw) Zp = Zd * (Zd50 / Zdw) 

Conversion from the PCS to the device would be done by inverting these equations:

 Xd = Xp * (Xdw / Xd50) Yd = Yp * (Ydw / Yd50) Zd = Zp * (Zdw / Zd50) 

Note that the media white point tag in an ICC profile is not the same as the device white point. The media white point tag is expressed in PCS values and is used to represent the difference between the XYZ of device illuminant and the XYZ of the device media when measured under that illuminant. The device white point is expressed as the device XYZ values corresponding to white displayed on the device. For example displaying the RGB color (1.0 1.0 1.0) on an sRGB device will result in a measured device XYZ value of D65. This will not be the same as the media white point tag XYZ value in the ICC profile for an sRGB device.

@param colorvalue a float array with length of at least the number of components in this ColorSpace. @return a float array of length 3. @throws ArrayIndexOutOfBoundsException if array length is not at least the number of components in this ColorSpace.

Class ICC_ColorSpace, float[] toRGB(float[])

Transforms a color value assumed to be in this ColorSpace into a value in the default CS_sRGB color space.

This method transforms color values using algorithms designed to produce the best perceptual match between input and output colors. In order to do colorimetric conversion of color values you should use the toCIEXYZ method of this color space to first convert from the input color space to the CS_CIEXYZ color space and then use the fromCIEXYZ method of the CS_sRGB color space to convert from CS_CIEXYZ to the output color space. See toCIEXYZ and fromCIEXYZ for further information.

@param colorvalue a float array with length of at least the number of components in this ColorSpace. @return a float array of length 3. @throws ArrayIndexOutOfBoundsException if array length is not at least the number of components in this ColorSpace.


Class ICC_Profile, int getColorSpaceType()

Returns the color space type. Returns one of the color space type constants defined by the ColorSpace class. This is the "input" color space of the profile. The type defines the number of components of the color space and the interpretation e.g. TYPE_RGB identifies a color space with three components - red green and blue. It does not define the particular color characteristics of the space e.g. the chromaticities of the primaries. @return One of the color space type constants defined in the ColorSpace class.
Class ICC_Profile, byte[] getData()

Returns a byte array corresponding to the data of this ICC_Profile. @return A byte array that contains the profile data. @see #setData(int byte[])
Class ICC_Profile, byte[] getData(int)

Returns a particular tagged data element from the profile as a byte array. Elements are identified by signatures as defined in the ICC specification. The signature icSigHead can be used to get the header. This method is useful for advanced applets or applications which need to access profile data directly. @param tagSignature The ICC tag signature for the data element you want to get. @return A byte array that contains the tagged data element. Returns null if no suchthe specified tag existsdoesn't exist. @see #setData(int byte[])
Class ICC_Profile, ICC_Profile getInstance(InputStream)

Constructs an ICC_Profile corresponding to the data in an InputStream. This method throws an IllegalArgumentException if the stream does not contain valid ICC Profile data. It throws an IOException if an I/O error occurs while reading the stream. @param s The input stream from which to read the profile data. @return an ICC_Profile object corresponding to the data in the specified InputStream. @exception IOException If an I/O error occurs while reading the stream. @exception IllegalArgumentException If the stream does not contain valid ICC Profile data.
Class ICC_Profile, ICC_Profile getInstance(String)

Constructs an ICC_Profile corresponding to the data in a file. fileName may be an absolute or a relative file specification. Relative file names are looked for in several places: first relative to any directories specified by the java.iccprofile.path property; second relative to any directories specified by the java.class.path property; finally in a directory used to store profiles always available such as the profile for sRGB. Built-in profiles use .pf as the file name extension for profiles e.g. sRGB.pf. This method throws an IOException if the specified file cannot be opened or if an I/O error occurs while reading the file. It throws an IllegalArgumentException if the file does not contain valid ICC Profile data. @param fileName The file that contains the data for the profile. @return an ICC_Profile object corresponding to the data in the specified file. @exception IOException If the specified file cannot be opened or an I/O error occurs while reading the file. @exception IllegalArgumentException If the file does not contain valid ICC Profile data.
Class ICC_Profile, ICC_Profile getInstance(byte[])

Constructs an ICC_Profile object corresponding to the data in a byte array. Throws an IllegalArgumentException if the data does not correspond to a valid ICC Profile. @param data the specified ICC Profile data @return an ICC_Profile object corresponding to the data in the specified data array.
Class ICC_Profile, ICC_Profile getInstance(int)

Constructs an ICC_Profile corresponding to one of the specific color spaces defined by the ColorSpace class (for example CS_sRGB). Throws an IllegalArgumentException if cspace is not one of the defined color spaces. @param cspace the type of color space to create a profile for. The specified type is one of the color space constants defined in the ColorSpace class. @return an ICC_Profile object corresponding to the specified ColorSpace type. @exception IllegalArgumentException If cspace is not one of the predefined color space types.
Class ICC_Profile, int getMajorVersion()

Returns profile major version. @return The major version of the profile.
Class ICC_Profile, int getMinorVersion()

Returns profile minor version. @return The minor version of the profile.
Class ICC_Profile, int getNumComponents()

Returns the number of color components in the "input" color space of this profile. For example if the color space type of this profile is TYPE_RGB then this method will return 3. @return The number of color components in the profile's input color space. @throws ProfileDataException if color space is in the profile is invalid
Class ICC_Profile, int getPCSType()

Returns the color space type of the Profile Connection Space (PCS). Returns one of the color space type constants defined by the ColorSpace class. This is the "output" color space of the profile. For an input display or output profile useful for tagging colors or images this will be either TYPE_XYZ or TYPE_Lab and should be interpreted as the corresponding specific color space defined in the ICC specification. For a device link profile this could be any of the color space type constants. @return One of the color space type constants defined in the ColorSpace class.
Class ICC_Profile, int getProfileClass()

Returns the profile class. Returns@return oneOne of the predefined profile class constants.
Class ICC_Profile, void setData(int, byte[])

Sets a particular tagged data element in the profile from a byte array. This method is useful for advanced applets or applications which need to access profile data directly. @param tagSignature The ICC tag signature for the data element you want to set. @param tagData the data to set for the specified tag signature @see #getData
Class ICC_Profile, void write(OutputStream)

Write this ICC_Profile to an OutputStream. Throws@param ans The stream to write the profile data to. @exception IOException If an I/O error occurs while writing to the stream.
Class ICC_Profile, void write(String)

Write this ICC_Profile to a file. Throws@param anfileName The file to write the profile data to. @exception IOException ifIf the file cannot be opened for writing or if an I/O error occurs while writing to the file.

Class ICC_ProfileGray, float[] getMediaWhitePoint()

Returns a float array of length 3 containing the X Y and Z components of the mediaWhitePointTag in the ICC profile. @return an array containing the components of the mediaWhitePointTag in the ICC profile.

Class ICC_ProfileRGB

AThe ICC_ProfileRGB class is a subclass of the ICC_Profile class whichthat represents profiles which meet the following criteria: the profiles. The getInstance methods in the ICC_Profile classgetInstance method will return an ICC_ProfileRGB object when the abovethese conditions are met. TheThree-component matrix-based input profiles and RGB display profiles are advantageexamples of this classtype isof thatprofile.

This profile itclass provides color transform matrices and lookup tables that Java or native methods may be able tocan use directly to optimize color conversion in some cases.

To transform from a device profile color space to the CIEXYZ Profile Connection Space each device color component is first linearized by a lookup through the corresponding tone reproduction curve (TRC). Then theThe resulting linear RGB components are converted viato the CIEXYZ PCS using a a 3x3 matrix (constructed from the RGB colorants) to the CIEXYZ PCS.

   linearR = redTRC[deviceR]   linearG = greenTRC[deviceG]   linearB = blueTRC[deviceB]   _ _ _ _ _ _  [ PCSX ] [ redColorantX greenColorantX blueColorantX ] [ linearR ]  [ ] [ ] [ ]  [ PCSY ] = [ redColorantY greenColorantY blueColorantY ] [ linearG ]  [ ] [ ] [ ]  [_ PCSZ _] [_ redColorantZ greenColorantZ blueColorantZ _] [_ linearB _] 
The inverse transform is doneperformed by converting PCS XYZ components to linear RGB components viathrough the inverse of the above 3x3 matrix and then converting linear RGB to device RGB viathrough inverses of the TRCs.

Class ICC_ProfileRGB, float getGamma(int)

Returns a gamma value representing the tone reproduction curve (TRC) for a particular component. ComponentThe component parameter must be one of REDCOMPONENT GREENCOMPONENT or BLUECOMPONENT.

If the profile represents the TRC for the corresponding component as a table rather than a single gamma value then an exception is thrown. In this case the actual table can be obtained viathrough the #getTRC(int) method. When using a gamma value the linear component (R G or B) is computed as follows:

   gamma   linearComponent = deviceComponent 
@param component The ICC_ProfileRGB constant that represents the component whose TRC you want to retrieve @return the gamma value as a float. @exception ProfileDataException if the profile does not specify the corresponding TRC as a single gamma value.
Class ICC_ProfileRGB, float[][] getMatrix()

Returns a 3x3 float matrix constructed from the X Y and Z components of the profile's redColorantTag greenColorantTag and blueColorantTag in the ICC profile as described above.

This matrix can be used for color transforms in the forward direction of the profile i.e. --from the profile color space to the CIEXYZ PCS. @return A 3x3 float array that contains the x y and z components of the profile's redColorantTag greenColorantTag and blueColorantTag.

Class ICC_ProfileRGB, float[] getMediaWhitePoint()

Returns aan float array that contains the components of lengththe profile's mediaWhitePointTag. @return A 3-element float array containing the X Yx y and Zz components of the mediaWhitePointTag in the ICC profile's mediaWhitePointTag.
Class ICC_ProfileRGB, short[] getTRC(int)

Returns the TRC for a particular component as an array of shorts. Component must be one of REDCOMPONENT GREENCOMPONENT or BLUECOMPONENT. If the profile has specified the corresponding TRC as linear (gamma = 1.0) or as a simple gamma value this method throws an exception and the getGamma() method should be used to get the gamma value. Otherwise the short array returned herearray represents a lookup table where the input component value is conceptually in the range [0.0 1.0]. Value 0.0 maps to array index 0 and value 1.0 maps to array index length-1. Interpolation maymight be used to generate output values for input values whichthat do not map exactly to an index in the array. Output values also map linearly to the range [0.0 1.0]. Value 0.0 is represented by an array value of 0x0000 and value 1.0 by 0xFFFF i.e. In other words the values are really unsigned short values althougheven though they are returned in a short array. If the profile has specified the corresponding TRC as linear (gamma = 1.0) or as a simple gamma value this method throws an exception. In this case the #getGamma(int) method should be used to get the gamma value. @param component The ICC_ProfileRGB constant that represents the component whose TRC you want to retrieve: REDCOMPONENT GREENCOMPONENT or BLUECOMPONENT. @return a short array representing the TRC. @exception ProfileDataException if the profile does not specify the corresponding TRC as a table.
Class ICC_ProfileRGB, int BLUECOMPONENT

To requestUsed to get a gamma value or TRC for the blue component.
Class ICC_ProfileRGB, int GREENCOMPONENT

To requestUsed to get a gamma value or TRC for the green component.
Class ICC_ProfileRGB, int REDCOMPONENT

To requestUsed to get a gamma value or TRC for the red component.

Class ProfileDataException, constructor ProfileDataException(String)

Constructs a ProfileDataException with the specified detail message. @param s the specified detail message