目次 | 前の項目 | 次の項目 | Java 2D API |
Raster オブジェクトはイメージデータを管理するためのものですが、BufferedImage クラスには、これ以外に、カラーピクセル値としてデータを解釈する ColorModel が含まれています。抽象クラスの ColorModel では、イメージのピクセルデータを対応する ColorSpace のカラー値に変換するメソッドが定義されています。java.awt.image パッケージでは、4 種類のカラーモデルが提供されています。
- PackedColorModel -- int 型のピクセルのビットに直接埋め込まれている色成分を持つピクセル値を表す抽象 ColorModel。DirectColorModel は、PackedColorModel のサブクラス
- DirectColorModel -- ピクセル自体のビットに直接埋め込まれた RGB の色成分を持つピクセル値を表す ColorModel。X11 TrueColor に類似したモデル
- ComponentColorModel -- 任意の ColorSpace と色成分の配列を処理して ColorSpace に適合させることのできる ColorModel
- IndexColorModel -- sRGB のカラー領域にある固定カラーマップへのインデックスであるピクセル値を表す ColorModel
ComponentColorModel と PackedColorModel は、JDK 1.2 で新しく導入されたものです。DataBuffer のデータに基づいて、SampleModel は ColorModel にピクセルを提供し、ColorModel はそのピクセルを色として解釈します。
ルックアップテーブルには、チャネルまたはイメージの成分のデータが含まれています。たとえば、赤と緑と青の独立した配列などです。java.awt.image パッケージでは、バイト型のデータを含むもの (ByteLookupTable) と short 型のデータを含むもの (ShortLookupData) の 2 種類のルックアップテーブルが定義されていて、どれも抽象クラスの LookupTable を継承しています。