|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Object | +--com.nttdocomo.ui.Image | +--com.nttdocomo.ui.PalettedImage
パレットを設定できるイメージを定義します。
PalettedImage クラスのオブジェクトはイメージの情報とパレットの情報を別々に持ち、
パレットを後から入れ替えることによって色違いの画像を描画することができます。
PalettedImage クラスは
PalettedImage オブジェクトを生成すると、
同時に Palette
オブジェクトも生成され、
PalettedImage オブジェクトに保持されます。
その Palette オブジェクトのエントリを直接変更することもできますし、
新たに生成した別の Palette オブジェクトを
PalettedImage オブジェクトに設定することもできます。
また、複数の PalettedImage オブジェクトに同一の Palette オブジェクトを設定すると、
一つのパレットを変更するだけで複数の画像を色違いで描画することができます。
Image
クラスのサブクラスですが、
Image を引数に取るメソッドの中のどのメソッドで使用できるのかは機種依存です。
PalettedImage に対応していないメソッドの引数に PalettedImage オブジェクトを指定して呼び出した場合、
特に例外は発生しませんが、描画内容については機種依存となります。
ただし、そのメソッドに特に規定が有る場合には、その規定が優先されます。
ミニマムスペックでは、
がサポートされています。
Graphics.drawImage(Image, int, int)
、
Graphics.drawImage(Image, int, int, int, int, int, int)
による描画
SpriteSet
の描画
ImageMap
の描画
Palette
コンストラクタの概要 | |
protected |
PalettedImage()
アプリケーションが直接このクラスのインスタンスを生成することはできません。 |
メソッドの概要 | |
static PalettedImage |
createPalettedImage(byte[] data)
バイト配列を指定してパレットを設定できるイメージを生成します。 |
static PalettedImage |
createPalettedImage(java.io.InputStream in)
ストリームを指定してパレットを設定できるイメージを生成します。 |
Graphics |
getGraphics()
このクラスのインスタンスに対して呼び出すことはできません。 |
Palette |
getPalette()
パレットを取得します。 |
void |
setPalette(Palette palette)
パレットを設定します。 |
クラス com.nttdocomo.ui.Image から継承したメソッド |
createImage, createImage, dispose, getHeight, getWidth |
クラス Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
protected PalettedImage()
メソッドの詳細 |
public static PalettedImage createPalettedImage(java.io.InputStream in)
ストリームを指定してパレットを設定できるイメージを生成します。
GIF 画像のバイナリデータからイメージ情報とパレット情報が生成されます。
イメージ情報は最大 256 色までのインデックスカラー表現で格納され、
描画時にはその時点で設定されているパレット情報を用いて色を復元しながら描画を行います。
パレット情報は、GIF 画像のバイナリデータのヘッダに記録されているカラーテーブルと同順・同サイズのエントリを持つパレットオブジェクトが生成され、
その中に格納されます。
また、カラーテーブルのサイズは生成された PalettedImage オブジェクトに記録さます。
以後、色数がこのカラーテーブルのサイズに満たないパレットオブジェクトは
setPalette(Palette)
メソッドで設定することはできません。
引数にアニメーションGIFを指定した場合は、
1 枚目の画像を元にイメージ情報とパレットオブジェクトが生成されます。
また、元のGIF画像に透過色指定がなされており、
透過色インデックスが index である場合には、
生成されるパレットオブジェクトにおいて
index 番目のエントリが常に透過色指定された状態になります。
透過色指定を解除・変更することはできません。
in
- イメージのデータを含む入力ストリームを指定します。
GIF 画像のバイナリデータをそのまま読み出すことができる入力ストリームを指定します。
NullPointerException
-
引数 in に null が指定された場合に発生します。
UIException
-
引数 in に不正なデータが指定された場合に発生します(UNSUPPORTED_FORMAT)。
public static PalettedImage createPalettedImage(byte[] data)
バイト配列を指定してパレットを設定できるイメージを生成します。
GIF 画像のバイナリデータからイメージ情報とパレット情報が生成されます。
イメージ情報は最大 256 色までのインデックスカラー表現で格納され、
描画時にはその時点で設定されているパレット情報を用いて色を復元しながら描画を行います。
パレット情報は、GIF 画像のバイナリデータのヘッダに記録されているカラーテーブルと同順・同サイズのエントリを持つパレットオブジェクトが生成され、
その中に格納されます。
また、カラーテーブルのサイズは生成された PalettedImage オブジェクトに記録さます。
以後、色数がこのカラーテーブルのサイズに満たないパレットオブジェクトは
setPalette(Palette)
メソッドで設定することはできません。
引数にアニメーションGIFを指定した場合は、
1 枚目の画像を元にイメージ情報とパレットオブジェクトが生成されます。
また、元のGIF画像に透過色指定がなされており、
透過色インデックスが index である場合には、
生成されるパレットオブジェクトにおいて
index 番目のエントリが常に透過色指定された状態になります。
透過色指定を解除・変更することはできません。
data
- イメージのデータを含むバイト配列指定します。
GIF 画像のバイナリデータがそのまま格納されたバイト配列を指定します。
NullPointerException
-
引数 data に null が指定された場合に発生します。
UIException
-
引数 data に不正なデータが指定された場合に発生します(UNSUPPORTED_FORMAT)。
public void setPalette(Palette palette)
Palette
オブジェクトへの参照がこのオブジェクトにコピーされます。
したがって、このメソッドを呼び出した後に当該 Palette
オブジェクトに対して Palette.setEntry(int, int)
をメソッドを呼び出した場合、
次の描画時には Palette の変更が反映されます。
palette
- パレットオブジェクトを指定します。
NullPointerException
-
引数 palette に null が指定された場合に発生します。
IllegalArgumentException
-
引数 palette の要素数が PalettedImage 生成時のパレットのエントリ数よりも小さい場合に発生します。
public Palette getPalette()
public final Graphics getGraphics()
Image
内の getGraphics
UnsupportedOperationException
-
このメソッドが呼ばれた場合に発生します。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
NTT DoCoMo,Inc.
本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。
Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。
「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。