JavaTM Platform
Standard Ed. 6

javax.imageio
クラス ImageTypeSpecifier

java.lang.Object
  上位を拡張 javax.imageio.ImageTypeSpecifier

public class ImageTypeSpecifier
extends Object

イメージの形式、特に SampleModelColorModel を、便利な方法で指定できるようにするクラスです。


フィールドの概要
protected  ColorModel colorModel
          プロトタイプとして使用する ColorModel です。
protected  SampleModel sampleModel
          プロトタイプとして使用する SampleModel です。
 
コンストラクタの概要
ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
          ColorModelSampleModel から直接 ImageTypeSpecifier を構築します。
ImageTypeSpecifier(RenderedImage image)
          RenderedImage から ImageTypeSpecifier を構築します。
 
メソッドの概要
static ImageTypeSpecifier createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
          ComponentColorModelBandedSampleModel を使用する、バンドされたイメージ形式の指示子を返して、各チャネルを別々の配列に格納します。
 BufferedImage createBufferedImage(int width, int height)
          このオブジェクトに取り入れられた指定に従って、与えられた幅と高さの BufferedImage を作成します。
static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
          標準 BufferedImage 形式の 1 つ (TYPE_CUSTOM 以外) を符号化する ImageTypeSpecifier を返します。
static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
          RenderedImage (BufferedImage の場合もある) の配置を符号化する ImageTypeSpecifier を返します。
static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned)
          与えられたビット深度のピクセルを、指定されたデータ型の配列要素にパックする、グレースケールイメージ形式の指示子を返します。
static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
          与えられたビット深度のピクセルを、指定されたデータ型の配列要素にパックする、グレースケールとプラスアルファのイメージ形式の指示子を返します。
static ImageTypeSpecifier createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
          与えられたビット深度のインデックス値を、指定されたデータ型の配列要素にパックする、インデックスされたカラーイメージ形式の指示子を返します。
static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
          ComponentColorModelPixelInterleavedSampleModel を使用する、インターリーブされたイメージ形式の指示子を返して、各ピクセル構成要素を別々の byte、short、または int に格納します。
static ImageTypeSpecifier createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
          DirectColorModel とパックされた SampleModel を使用する、パックされたイメージ形式の指示子を返して、1 byte、short、または int にパックされた各ピクセルを格納します。
 boolean equals(Object o)
          与えられた ObjectImageTypeSpecifier で、このオブジェクトと等しい SampleModelColorModel を持つ場合、true を返します。
 int getBitsPerBand(int band)
          与えられたバンドのサンプルを表すために使用されるビット数を返します。
 int getBufferedImageType()
          BufferedImage から、イメージ形式を記述する列挙された定数値の 1 つを含む int を返します。
 ColorModel getColorModel()
          オブジェクトで指定された ColorModel を返します。
 int getNumBands()
          オブジェクトで指定されたバンドの数を返します。
 int getNumComponents()
          オブジェクトで指定された色成分の数を返します。
 SampleModel getSampleModel()
          このオブジェクト内にカプセル化された設定に基づく SampleModel を返します。
 SampleModel getSampleModel(int width, int height)
          このオブジェクト内にカプセル化された設定に基づく SampleModel を返します。
 int hashCode()
          この ImageTypeSpecifier のハッシュコードを返します。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

colorModel

protected ColorModel colorModel
プロトタイプとして使用する ColorModel です。


sampleModel

protected SampleModel sampleModel
プロトタイプとして使用する SampleModel です。

コンストラクタの詳細

ImageTypeSpecifier

public ImageTypeSpecifier(ColorModel colorModel,
                          SampleModel sampleModel)
ColorModelSampleModel から直接 ImageTypeSpecifier を構築します。互換性があるパラメータを提供するのは、呼び出し側の役割となります。

パラメータ:
colorModel - ColorModel
sampleModel - SampleModel
例外:
IllegalArgumentException - いずれかのパラメータが null の場合
IllegalArgumentException - sampleModelcolorModel と互換性がない場合

ImageTypeSpecifier

public ImageTypeSpecifier(RenderedImage image)
RenderedImage から ImageTypeSpecifier を構築します。BufferedImage を使用している場合、より正確な結果を得るために、ファクトリメソッドの 1 つである createFromRenderedImage または createFromBufferedImageType を代わりに使用する必要があります。

パラメータ:
image - RenderedImage
例外:
IllegalArgumentException - 引数が null の場合
メソッドの詳細

createPacked

public static ImageTypeSpecifier createPacked(ColorSpace colorSpace,
                                              int redMask,
                                              int greenMask,
                                              int blueMask,
                                              int alphaMask,
                                              int transferType,
                                              boolean isAlphaPremultiplied)
DirectColorModel とパックされた SampleModel を使用する、パックされたイメージ形式の指示子を返して、1 byte、short、または int にパックされた各ピクセルを格納します。

パラメータ:
colorSpace - 希望する ColorSpace
redMask - 赤のチャネルの位置が示された 隣接するマスク
greenMask - 緑のチャネルの位置が示された 隣接するマスク
blueMask - 青のチャネルの位置が示された 隣接するマスク
alphaMask - アルファチャネルの位置が示された 隣接するマスク
transferType - 希望する SampleModel 転送タイプ
isAlphaPremultiplied - 配色チャネルがアルファチャネルで 倍加される場合、true
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - colorSpacenull の場合
IllegalArgumentException - colorSpace が タイプ TYPE_RGB でない場合
IllegalArgumentException - マスクに 1 ビットも 設定されていない場合
IllegalArgumentException - transferType が、 DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INT のいずれでもない場合

createInterleaved

public static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace,
                                                   int[] bandOffsets,
                                                   int dataType,
                                                   boolean hasAlpha,
                                                   boolean isAlphaPremultiplied)
ComponentColorModelPixelInterleavedSampleModel を使用する、インターリーブされたイメージ形式の指示子を返して、各ピクセル構成要素を別々の byte、short、または int に格納します。

パラメータ:
colorSpace - 希望する ColorSpace
bandOffsets - 各バンドのオフセットを示す int の配列
dataType - 希望するデータ型を、 DataBuffer クラスからの列挙法の 1 つで表したもの
hasAlpha - アルファチャネルを希望する場合、true
isAlphaPremultiplied - 配色チャネルがアルファチャネルで 倍加される場合、true
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - colorSpacenull の場合
IllegalArgumentException - bandOffsetsnull の場合
IllegalArgumentException - dataType が 正当な DataBuffer.TYPE_* 定数の 1 つでない場合
IllegalArgumentException - bandOffsets.length が カラー領域成分の数と等しくない場合、 hasAlphatrue のとき + 1

createBanded

public static ImageTypeSpecifier createBanded(ColorSpace colorSpace,
                                              int[] bankIndices,
                                              int[] bandOffsets,
                                              int dataType,
                                              boolean hasAlpha,
                                              boolean isAlphaPremultiplied)
ComponentColorModelBandedSampleModel を使用する、バンドされたイメージ形式の指示子を返して、各チャネルを別々の配列に格納します。

パラメータ:
colorSpace - 希望する ColorSpace
bankIndices - 各バンドを格納する バンクを示す int の配列
bandOffsets - バンク内の各バンドの 開始オフセットを示す int の配列
dataType - 希望するデータ型を、 DataBuffer クラスからの列挙法の 1 つで表したもの
hasAlpha - アルファチャネルを希望する場合、true
isAlphaPremultiplied - 配色チャネルがアルファチャネルで 倍加される場合、true
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - colorSpacenull の場合
IllegalArgumentException - bankIndicesnull の場合
IllegalArgumentException - bandOffsetsnull の場合
IllegalArgumentException - bankIndicesbandOffsets の 長さが異なる場合
IllegalArgumentException - bandOffsets.length が カラー領域成分の数と等しくない場合、 hasAlphatrue のとき + 1
IllegalArgumentException - dataType が 正当な DataBuffer.TYPE_* 定数の 1 つでない場合

createGrayscale

public static ImageTypeSpecifier createGrayscale(int bits,
                                                 int dataType,
                                                 boolean isSigned)
与えられたビット深度のピクセルを、指定されたデータ型の配列要素にパックする、グレースケールイメージ形式の指示子を返します。

パラメータ:
bits - グレー表示の値ごとのビット数 (1、2、4、8、または 16)
dataType - 希望するデータ型を、 DataBuffer クラスからの列挙法の 1 つで表したもの
isSigned - 負の値が表示される場合、 true
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - bits が 1、2、4、8、 または 16 のいずれでもない場合
IllegalArgumentException - dataType が、 DataBuffer.TYPE_BYTEDataBuffer.TYPE_SHORTDataBuffer.TYPE_USHORT のいずれでもない場合
IllegalArgumentException - bits が、 与えられる dataType のビットサイズより大きい場合

createGrayscale

public static ImageTypeSpecifier createGrayscale(int bits,
                                                 int dataType,
                                                 boolean isSigned,
                                                 boolean isAlphaPremultiplied)
与えられたビット深度のピクセルを、指定されたデータ型の配列要素にパックする、グレースケールとプラスアルファのイメージ形式の指示子を返します。

パラメータ:
bits - グレー表示の値ごとのビット数 (1、2、4、8、または 16)
dataType - 希望するデータ型を、 DataBuffer クラスからの列挙法の 1 つで表したもの
isSigned - 負の値が表示される場合、 true
isAlphaPremultiplied - 輝度チャネルがアルファチャネルで 倍加される場合、true
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - bits が 1、2、4、8、 または 16 のいずれでもない場合
IllegalArgumentException - dataType が、 DataBuffer.TYPE_BYTEDataBuffer.TYPE_SHORTDataBuffer.TYPE_USHORT のいずれでもない場合
IllegalArgumentException - bits が、 与えられる dataType のビットサイズより大きい場合

createIndexed

public static ImageTypeSpecifier createIndexed(byte[] redLUT,
                                               byte[] greenLUT,
                                               byte[] blueLUT,
                                               byte[] alphaLUT,
                                               int bits,
                                               int dataType)
与えられたビット深度のインデックス値を、指定されたデータ型の配列要素にパックする、インデックスされたカラーイメージ形式の指示子を返します。

パラメータ:
redLUT - 各インデックスに対する赤の値を 含む byte の配列
greenLUT - 各インデックスに対する * 緑の値を 含む byte の配列
blueLUT - 各インデックスに対する青の値を 含む byte の配列
alphaLUT - 各インデックスに対するアルファ値 または完全に不透明な LUT を作成するための null を含む byte の配列
bits - 各インデックスのビット数
dataType - 望する出力形式を、 DataBuffer クラスからの列挙法の 1 つで表したもの
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - redLUTnull の場合
IllegalArgumentException - greenLUTnull の場合
IllegalArgumentException - blueLUTnull の場合
IllegalArgumentException - bits が 1、2、4、8、 または 16 のいずれでもない場合
IllegalArgumentException - null 以外の LUT パラメータが、厳密に 1 << bits の長さを持たない場合
IllegalArgumentException - dataType が、 DataBuffer.TYPE_BYTEDataBuffer.TYPE_SHORTDataBuffer.TYPE_USHORTDataBuffer.TYPE_INT のいずれでもない場合
IllegalArgumentException - bits が、 与えられる dataType のビットサイズより大きい場合

createFromBufferedImageType

public static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
標準 BufferedImage 形式の 1 つ (TYPE_CUSTOM 以外) を符号化する ImageTypeSpecifier を返します。

パラメータ:
bufferedImageType - 標準 BufferedImage 形式の 1 つを表す int
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - bufferedImageType が標準形式のいずれでもない、 または TYPE_CUSTOM と 等しい場合
関連項目:
BufferedImage, BufferedImage.TYPE_INT_RGB, BufferedImage.TYPE_INT_ARGB, BufferedImage.TYPE_INT_ARGB_PRE, BufferedImage.TYPE_INT_BGR, BufferedImage.TYPE_3BYTE_BGR, BufferedImage.TYPE_4BYTE_ABGR, BufferedImage.TYPE_4BYTE_ABGR_PRE, BufferedImage.TYPE_USHORT_565_RGB, BufferedImage.TYPE_USHORT_555_RGB, BufferedImage.TYPE_BYTE_GRAY, BufferedImage.TYPE_USHORT_GRAY, BufferedImage.TYPE_BYTE_BINARY, BufferedImage.TYPE_BYTE_INDEXED

createFromRenderedImage

public static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
RenderedImage (BufferedImage の場合もある) の配置を符号化する ImageTypeSpecifier を返します。

パラメータ:
image - RenderedImage
戻り値:
希望する特徴を持つ ImageTypeSpecifier
例外:
IllegalArgumentException - imagenull の場合

getBufferedImageType

public int getBufferedImageType()
BufferedImage から、イメージ形式を記述する列挙された定数値の 1 つを含む int を返します。

戻り値:
BufferedImage 形式を 表す int
関連項目:
BufferedImage, BufferedImage.TYPE_CUSTOM, BufferedImage.TYPE_INT_RGB, BufferedImage.TYPE_INT_ARGB, BufferedImage.TYPE_INT_ARGB_PRE, BufferedImage.TYPE_INT_BGR, BufferedImage.TYPE_3BYTE_BGR, BufferedImage.TYPE_4BYTE_ABGR, BufferedImage.TYPE_4BYTE_ABGR_PRE, BufferedImage.TYPE_USHORT_565_RGB, BufferedImage.TYPE_USHORT_555_RGB, BufferedImage.TYPE_BYTE_GRAY, BufferedImage.TYPE_USHORT_GRAY, BufferedImage.TYPE_BYTE_BINARY, BufferedImage.TYPE_BYTE_INDEXED

getNumComponents

public int getNumComponents()
オブジェクトで指定された色成分の数を返します。ColorModel.getNumComponents が返す値と同じです。

戻り値:
イメージ内のコンポーネント数

getNumBands

public int getNumBands()
オブジェクトで指定されたバンドの数を返します。SampleModel.getNumBands が返す値と同じです。

戻り値:
イメージ内のバンド数

getBitsPerBand

public int getBitsPerBand(int band)
与えられたバンドのサンプルを表すために使用されるビット数を返します。

パラメータ:
band - 照会されるバンドのインデックスを int で 表したもの
戻り値:
ビット数を指定する int
例外:
IllegalArgumentException - band が 負または最大のバンドインデックスより大きい場合

getSampleModel

public SampleModel getSampleModel()
このオブジェクト内にカプセル化された設定に基づく SampleModel を返します。SampleModel の幅と高さは任意の値に設定されます。

戻り値:
任意の大きさを持つ SampleModel

getSampleModel

public SampleModel getSampleModel(int width,
                                  int height)
このオブジェクト内にカプセル化された設定に基づく SampleModel を返します。SampleModel の幅と高さは提供された値に設定されます。

パラメータ:
width - 返された SampleModel の希望する幅
height - 返された SampleModel の 希望する高さ
戻り値:
与えられた大きさを持つ SampleModel
例外:
IllegalArgumentException - width または height が負または 0 の場合
IllegalArgumentException - widthheight の積が Integer.MAX_VALUE より 大きい場合

getColorModel

public ColorModel getColorModel()
オブジェクトで指定された ColorModel を返します。

戻り値:
ColorModel

createBufferedImage

public BufferedImage createBufferedImage(int width,
                                         int height)
このオブジェクトに取り入れられた指定に従って、与えられた幅と高さの BufferedImage を作成します。

パラメータ:
width - 返された BufferedImage の 希望する幅
height - 返された BufferedImage の 希望する高さ
戻り値:
新しい BufferedImage
例外:
IllegalArgumentException - width または height が負または 0 の場合
IllegalArgumentException - widthheight の積が Integer.MAX_VALUE より 大きい場合、 またはイメージを格納するために必要な配列要素の数が Integer.MAX_VALUE より大きい場合

equals

public boolean equals(Object o)
与えられた ObjectImageTypeSpecifier で、このオブジェクトと等しい SampleModelColorModel を持つ場合、true を返します。

オーバーライド:
クラス Object 内の equals
パラメータ:
o - 等しいかどうかを比較する対象の Object
戻り値:
与えられたオブジェクトが ImageTypeSpecifier と等しい場合、 true
関連項目:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
この ImageTypeSpecifier のハッシュコードを返します。

オーバーライド:
クラス Object 内の hashCode
戻り値:
この ImageTypeSpecifier のハッシュコード
関連項目:
Object.equals(java.lang.Object), Hashtable

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。