|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object![]()
![]()
![]()
java.awt.color.ICC_Profile
![]()
![]()
![]()
java.awt.color.ICC_ProfileRGB

public class ICC_ProfileRGB

The ICC_ProfileRGB class is a subclass of the ICC_Profile class that represents profiles which meet the following criteria:
redColorantTag,
greenColorantTag, blueColorantTag,
redTRCTag, greenTRCTag,
blueTRCTag, and mediaWhitePointTag tags.ICC_Profile getInstance method will
return an ICC_ProfileRGB object when these conditions are met.
Three-component, matrix-based input profiles and RGB display profiles are
examples of this type of profile.
This profile class provides color transform matrices and lookup tables that Java or native methods can 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). The resulting linear RGB components are converted to the CIEXYZ PCS using a a 3x3 matrix constructed from the RGB colorants.
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 performed by converting PCS XYZ components to linear RGB components through the inverse of the above 3x3 matrix, and then converting linear RGB to device RGB through inverses of the TRCs.
| Field Summary | |
|---|---|
static int |
BLUECOMPONENT
Used to get a gamma value or TRC for the blue component. |
static int |
GREENCOMPONENT
Used to get a gamma value or TRC for the green component. |
static int |
REDCOMPONENT
Used to get a gamma value or TRC for the red component. |
| Method Summary | |
|---|---|
float |
getGamma
Returns a gamma value representing the tone reproduction curve (TRC) for a particular component. |
float[][] |
getMatrix
Returns a 3x3 float matrix constructed from the
X, Y, and Z components of the profile's redColorantTag,
greenColorantTag, and blueColorantTag. |
float[] |
getMediaWhitePoint
Returns an array that contains the components of the profile's mediaWhitePointTag. |
short[] |
getTRC
Returns the TRC for a particular component as an array. |
Methods inherited from class java.awt.color.ICC_Profile ![]() |
|---|
finalize |
Methods inherited from class java.lang.Object ![]() |
|---|
clone |
| Field Detail |
|---|

public static final int REDCOMPONENT

public static final int GREENCOMPONENT

public static final int BLUECOMPONENT
| Method Detail |
|---|

public float[] getMediaWhitePoint()
mediaWhitePointTag.
float array containing the x, y,
and z components of the profile's mediaWhitePointTag.

public float[][] getMatrix()
float matrix constructed from the
X, Y, and Z components of the profile's redColorantTag,
greenColorantTag, and blueColorantTag.
This matrix can be used for color transforms in the forward direction of the profile--from the profile color space to the CIEXYZ PCS.
float array that contains the x, y, and z
components of the profile's redColorantTag,
greenColorantTag, and blueColorantTag.

public float getGamma(int component)
If the profile
represents the TRC for the corresponding component
as a table rather than a single gamma value, an
exception is thrown. In this case the actual table
can be obtained through the getTRC(int)
method.
When using a gamma value,
the linear component (R, G, or B) is computed as follows:
gamma linearComponent = deviceComponent
component - The ICC_ProfileRGB constant that
represents the component whose TRC you want to retrieve
ProfileDataException

- if the profile does not specify
the corresponding TRC as a single gamma value.