|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
java.lang.Object
|
+--java.awt.color.ICC_Profile
|
+--java.awt.color.ICC_ProfileRGB
ICC_ProfileRGB クラスは、ICC_Profile クラスのサブクラスの 1 つで、次の条件を満たすプロファイルを表します。
redColorantTag、greenColorantTag、blueColorantTag、redTRCTag、greenTRCTag、blueTRCTag、および mediaWhitePointTag タグが含まれるICC_Profile の getInstance メソッドは、これらの条件を満たすプロファイルに対して、ICC_ProfileRGB オブジェクトを返します。このようなプロファイルの例として、3 成分で構成される行列ベースの入力プロファイルや RGB 表示プロファイルなどがあります。
このプロファイルクラスのカラー変換行列およびルックアップテーブルを Java のメソッドやネイティブメソッドで直接使用して、カラー変換を最適化できることもあります。
デバイスプロファイルカラースペースを CIEXYZ プロファイル接続領域に変換するときは、デバイスの色成分を線形化するときに、対応するトーンリプロダクションカーブ (TRC) が検索されます。変換結果の線形 RGB 成分は、RGB 色素から構成される 3x3 行列を使用して 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 _]CIEXYZ プロファイル接続領域をデバイスプロファイルカラースペースに変換するときも、3x3 行列を使用して PCS XYZ 成分を線形 RGB 成分に変換し、次に TRC を使用して線形 RGB をデバイス RGB に変換します。
| フィールドの概要 | |
static int |
BLUECOMPONENT
青色成分のガンマ値または TRC を取得するときに使用します。 |
static int |
GREENCOMPONENT
緑色成分のガンマ値または TRC を取得するときに使用します。 |
static int |
REDCOMPONENT
赤色成分のガンマ値または TRC を取得するときに使用します。 |
| メソッドの概要 | |
float |
getGamma(int component)
特定の成分のトーンリプロダクションカーブ (TRC) を表すガンマ値を返します。 |
float[][] |
getMatrix()
プロファイルの redColorantTag、greenColorantTag、および blueColorantTag の X、Y、および Z 成分から構成される、3x3 float 行列を返します。
|
float[] |
getMediaWhitePoint()
プロファイルの mediaWhitePointTag の成分を含む配列を返します。 |
short[] |
getTRC(int component)
特定の成分の TRC を配列として返します。 |
| クラス java.awt.color.ICC_Profile から継承したメソッド |
finalize, getColorSpaceType, getData, getData, getInstance, getInstance, getInstance, getInstance, getMajorVersion, getMinorVersion, getNumComponents, getPCSType, getProfileClass, readResolve, setData, write, write |
| クラス java.lang.Object から継承したメソッド |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
public static final int REDCOMPONENT
public static final int GREENCOMPONENT
public static final int BLUECOMPONENT
| メソッドの詳細 |
public float[] getMediaWhitePoint()
mediaWhitePointTag の成分を含む配列を返します。
ICC_Profile 内の getMediaWhitePointfloat の配列を返す。この配列は、プロファイルの mediaWhitePointTag の x、y、および z 成分で構成されるpublic float[][] getMatrix()
redColorantTag、greenColorantTag、および blueColorantTag の X、Y、および Z 成分から構成される、3x3 float 行列を返します。
この行列を使用して、プロファイルカラースペースから CIEXYZ PCS へのカラー変換を行うことができます。
float の配列。プロファイルの redColorantTag、greenColorantTag、および blueColorantTag の x、y、および z 成分で構成されるpublic float getGamma(int component)
プロファイルの TRC の対応する成分が、単一ガンマ値ではなくテーブルとして表されている場合は、例外がスローされます。この場合、TRC のテーブルは getTRC(int) メソッドを使って取得できます。ガンマ値を使用している場合、線形成分 (R、G、または B) は次のように計算されます。
gamma linearComponent = deviceComponent
ICC_Profile 内の getGammacomponent - 取得する TRC の成分を表す ICC_ProfileRGB 定数
ProfileDataException - プロファイルの対応する TRC が単一ガンマ値として指定されていない場合public short[] getTRC(int component)
REDCOMPONENT、GREENCOMPONENT、または BLUECOMPONENT でなければなりません。返される配列はルックアップテーブルを表しており、入力成分値は [0.0, 1.0] の範囲に定義されています。値 0.0 は配列インデックスの 0 に割り当てられ、値 1.0 は配列インデックスの長さ -1 に割り当てられます。入力値が配列インデックスに正確に割り当てられないときは、出力値を生成するときに補間が使用されます。出力値も、範囲 [0.0, 1.0] に線形的に割り当てられます。値 0.0 は配列の値 0x0000 として表され、値 1.0 は配列の値 0xFFFF として表されます。つまり、返される値は short 配列ですが、実際には符号なしの short 値です。プロファイルの対応する TRC が線形 (ガンマ = 1.0) または単純なガンマ値として指定されている場合は、例外がスローされます。この場合、このガンマ値を取得するには、getGamma(int) メソッドを使用する必要があります。
ICC_Profile 内の getTRCcomponent - 取得する TRC の成分を表す ICC_ProfileRGB 定数。REDCOMPONENT、GREENCOMPONENT、BLUECOMPONENT のいずれか
ProfileDataException - プロファイルの TRC がテーブルとして指定されていない場合
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.