|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.Graphics
public abstract class Graphics
Graphics
クラスは、すべてのグラフィックコンテキストの抽象基底クラスです。グラフィックコンテキストによってアプリケーションは、各種デバイスにより実現されるコンポーネント上やオフスクリーンイメージ上に描画できます。
Graphics
オブジェクトは、Java がサポートする基本的な描画操作に必要な状態情報をカプセル化します。この状態情報には、次のプロパティーがあります。
Component
オブジェクト
setXORMode(java.awt.Color)
参照)
座標軸は無限に細く、出力デバイスのピクセル間に存在します。図形の輪郭を描く操作は、ピクセルサイズのペンをピクセル間の無限に細い輪郭線に沿って動かしていくことによって動作します。ペンは、輪郭線のアンカーポイントにぶら下がり、かつ右側に位置しています。図形の内部を埋める操作は、無限に細い輪郭線の内部を埋め込むことにより動作します。水平の文字を描画する操作は、ベースライン座標より上に文字グリフのアセンダ部分をすべて描画します。
グラフィックスペンはその軌道の輪郭線にぶら下がり、かつ右側に位置しています。これは、次のことを示します。
この Graphics
のメソッドの引数として使われるすべての座標値は、メソッドの呼び出しの前に、この Graphics
オブジェクトの変換元に相対的なものと見なされる
すべての描画操作は、Shape
がユーザー空間に指定し、Graphics
オブジェクトを使用してプログラムが制御する現在のクリップに囲まれたエリアにあるピクセルだけを変更します。この「ユーザークリップ」はデバイス空間に変換され、ウィンドウの可視およびデバイスの大きさによって定義される「デバイスクリップ」と結合されます。ユーザークリップとデバイスクリップの結合によって、最終的なクリッピング領域を決める「複合クリップ」を定義します。描画システムは、ユーザークリップを変更して複合クリップの結果を反映することはできません。ユーザークリップは setClip
または clipRect
メソッドだけで変更できます。すべての描画や書き込みは、現在の色で、現在のペイントモードとフォントを使用して行われます。
Component
,
clipRect(int, int, int, int)
,
setColor(java.awt.Color)
,
setPaintMode()
,
setXORMode(java.awt.Color)
,
setFont(java.awt.Font)
コンストラクタの概要 | |
---|---|
protected |
Graphics()
新しい Graphics オブジェクトを作成します。 |
メソッドの概要 | |
---|---|
abstract void |
clearRect(int x,
int y,
int width,
int height)
指定された矩形を、現在の描画表面のバックグラウンドカラーで塗りつぶすことによりクリアします。 |
abstract void |
clipRect(int x,
int y,
int width,
int height)
現在のクリップと指定された矩形を交差させます。 |
abstract void |
copyArea(int x,
int y,
int width,
int height,
int dx,
int dy)
コンポーネントの領域を、 dx と dy で指定された距離でコピーします。 |
abstract Graphics |
create()
この Graphics オブジェクトのコピーである、新しい Graphics オブジェクトを作成します。 |
Graphics |
create(int x,
int y,
int width,
int height)
この Graphics オブジェクトに基づいた新しい Graphics オブジェクトを、新しい変換およびクリップ領域で作成します。 |
abstract void |
dispose()
このグラフィックスコンテキストを破棄して、使用中のシステムリソースがあればそれを解放します。 |
void |
draw3DRect(int x,
int y,
int width,
int height,
boolean raised)
指定された矩形の輪郭を 3D で強調表示して描画します。 |
abstract void |
drawArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
指定された矩形をカバーする円弧または楕円弧の輪郭を描きます。 |
void |
drawBytes(byte[] data,
int offset,
int length,
int x,
int y)
このグラフィックスコンテキストの現在のフォントと色を使い、指定されたバイト配列によって指定されたテキストを描きます。 |
void |
drawChars(char[] data,
int offset,
int length,
int x,
int y)
このグラフィックスコンテキストの現在のフォントと色を使い、指定された文字配列によって指定されたテキストを描きます。 |
abstract boolean |
drawImage(Image img,
int x,
int y,
Color bgcolor,
ImageObserver observer)
指定されたイメージの現在利用可能な部分だけを描きます。 |
abstract boolean |
drawImage(Image img,
int x,
int y,
ImageObserver observer)
指定されたイメージの現在利用可能な部分だけを描きます。 |
abstract boolean |
drawImage(Image img,
int x,
int y,
int width,
int height,
Color bgcolor,
ImageObserver observer)
指定された矩形の内部に収まるようにスケーリングして、指定されたイメージの利用可能な部分を描きます。 |
abstract boolean |
drawImage(Image img,
int x,
int y,
int width,
int height,
ImageObserver observer)
指定された矩形の内部に収まるようにスケーリングして、指定されたイメージの利用可能な部分を描きます。 |
abstract boolean |
drawImage(Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
Color bgcolor,
ImageObserver observer)
指定されたイメージの指定された領域の利用可能な部分を描きます。 |
abstract boolean |
drawImage(Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
ImageObserver observer)
指定されたイメージの指定された領域の利用可能な部分を描きます。 |
abstract void |
drawLine(int x1,
int y1,
int x2,
int y2)
このグラフィックスコンテキストの座標系の点 (x1, y1) と点 (x2, y2) との間に現在の色を使って線を描きます。 |
abstract void |
drawOval(int x,
int y,
int width,
int height)
楕円の輪郭を描きます。 |
abstract void |
drawPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
x 座標と y 座標の配列で定義された閉じた多角形を描きます。 |
void |
drawPolygon(Polygon p)
指定された Polygon オブジェクトによって定義される多角形の輪郭を描きます。 |
abstract void |
drawPolyline(int[] xPoints,
int[] yPoints,
int nPoints)
x 座標と y 座標の配列で定義され連続的につながった直線を描きます。 |
void |
drawRect(int x,
int y,
int width,
int height)
指定された矩形の輪郭を描きます。 |
abstract void |
drawRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
丸いコーナー付きの輪郭の矩形を、このグラフィックスコンテキストの現在の色を使用して描きます。 |
abstract void |
drawString(AttributedCharacterIterator iterator,
int x,
int y)
指定された反復子によってテキストを描き、 TextAttribute クラスの仕様に基づいて属性を適用します。 |
abstract void |
drawString(String str,
int x,
int y)
このグラフィックスコンテキストの現在のフォントと色を使い、指定された文字列によって指定されたテキストを描きます。 |
void |
fill3DRect(int x,
int y,
int width,
int height,
boolean raised)
現在の色で塗りつぶされている、3D で強調表示された矩形をペイントします。 |
abstract void |
fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
指定された矩形をカバーする円弧または楕円弧を塗りつぶします。 |
abstract void |
fillOval(int x,
int y,
int width,
int height)
指定された矩形の中の楕円形を現在の色で塗りつぶします。 |
abstract void |
fillPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
x 座標と y 座標の配列で定義される閉じた多角形を塗りつぶします。 |
void |
fillPolygon(Polygon p)
指定された Polygon オブジェクトで定義された多角形をグラフィックスコンテキストの現在の色で塗りつぶします。 |
abstract void |
fillRect(int x,
int y,
int width,
int height)
指定された矩形を塗りつぶします。 |
abstract void |
fillRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
指定された丸いコーナー付きの矩形を現在の色で塗りつぶします。 |
void |
finalize()
参照されなくなった、このグラフィックスコンテキストを破棄します。 |
abstract Shape |
getClip()
現在のクリッピング領域を返します。 |
abstract Rectangle |
getClipBounds()
現在のクリッピング領域の境界の矩形を返します。 |
Rectangle |
getClipBounds(Rectangle r)
現在のクリッピング領域の境界の矩形を返します。 |
Rectangle |
getClipRect()
推奨されていません。 JDK Version 1.1 以降は、 getClipBounds() に置き換えられました。 |
abstract Color |
getColor()
このグラフィックスコンテキストの現在の色を返します。 |
abstract Font |
getFont()
現在のフォントを返します。 |
FontMetrics |
getFontMetrics()
現在のフォントのフォントメトリックを返します。 |
abstract FontMetrics |
getFontMetrics(Font f)
指定されたフォントのフォントメトリックを返します。 |
boolean |
hitClip(int x,
int y,
int width,
int height)
指定された矩形領域が現在のクリッピング領域と交差する場合は true を返します。 |
abstract void |
setClip(int x,
int y,
int width,
int height)
指定した座標が指定した矩形に現在のクリップを設定します。 |
abstract void |
setClip(Shape clip)
現在のクリッピング領域を任意のクリップ形状に設定します。 |
abstract void |
setColor(Color c)
このグラフィックスコンテキストの現在の色を、指定された色に設定します。 |
abstract void |
setFont(Font font)
このグラフィックスコンテキストのフォントを、指定されたフォントに設定します。 |
abstract void |
setPaintMode()
このグラフィックスコンテキストの現在の色でデスティネーションを上書きするように、ペイントモードを設定します。 |
abstract void |
setXORMode(Color c1)
このグラフィックスコンテキストの現在の色と新しく指定された色を切り替えるように、グラフィックスコンテキストのペイントモードを設定します。 |
String |
toString()
この Graphics オブジェクトの値を表現している、String オブジェクトを返します。 |
abstract void |
translate(int x,
int y)
グラフィックスコンテキストの原点を現在の座標系の点 (x, y) に変換します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
protected Graphics()
Graphics
オブジェクトを作成します。このコンストラクタは、グラフィックスコンテキストのデフォルトコンストラクタです。
Graphics
は abstract クラスなので、アプリケーションはこのコンストラクタを直接呼び出すことはできません。グラフィックスコンテキストは、ほかのグラフィックスコンテキストから取得されるか、コンポーネントで getGraphics
を呼び出すことによって作成されます。
create()
,
Component.getGraphics()
メソッドの詳細 |
---|
public abstract Graphics create()
Graphics
オブジェクトのコピーである、新しい Graphics
オブジェクトを作成します。
public Graphics create(int x, int y, int width, int height)
Graphics
オブジェクトに基づいた新しい Graphics
オブジェクトを、新しい変換およびクリップ領域で作成します。新しい Graphics
オブジェクトはその原点を、指定された点 (x, y) に変換させます。そのクリップ領域は、元のクリップ領域と指定された矩形との共通部分で指定されます。引数はすべて、元の Graphics
オブジェクトの座標系に変換されます。新しいグラフィックスコンテキストは、次の 2 点以外については元のグラフィックスコンテキストと同じです。
0
, 0
) は元のグラフィックスコンテキストの点 (x, y) と同じとなる
0
, 0
) にあって、そのサイズは width
引数と height
引数で指定される
x
- x 座標y
- y 座標width
- クリッピング矩形の幅height
- クリッピング矩形の高さ
translate(int, int)
,
clipRect(int, int, int, int)
public abstract void translate(int x, int y)
x
- x 座標y
- y 座標public abstract Color getColor()
Color
,
setColor(Color)
public abstract void setColor(Color c)
c
- 新しい描画色Color
,
getColor()
public abstract void setPaintMode()
public abstract void setXORMode(Color c1)
描画操作を実行すると、現在の色のピクセルが指定された色に切り替わり、その逆も当てはまります。
ここで取り上げられた 2 色以外の色を持つピクセルは予想できない色に変化しますが、それらは元に戻せるようになっています。同じ図を 2 回描画すれば、すべてのピクセルは初期の設定色に戻ります。
c1
- XOR の交代色public abstract Font getFont()
Font
,
setFont(Font)
public abstract void setFont(Font font)
font
- フォントgetFont()
,
drawString(java.lang.String, int, int)
,
drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public FontMetrics getFontMetrics()
getFont()
,
FontMetrics
,
getFontMetrics(Font)
public abstract FontMetrics getFontMetrics(Font f)
f
- 指定されたフォント
getFont()
,
FontMetrics
,
getFontMetrics()
public abstract Rectangle getClipBounds()
setClip(null)
を使用してクリアされている場合は、このメソッドは null
を返します。矩形内の座標はこのグラフィックスコンテキストの座標系の原点を基準にしています。
null
getClip()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
,
setClip(Shape)
public abstract void clipRect(int x, int y, int width, int height)
setClip(null)
を使用してクリアされたため現在のクリッピング領域がない場合は、指定した矩形が新しいクリップとなります。このメソッドは、デバイス境界やウィンドウ可視に関連したクリックピングに依存しないユーザークリップを設定します。このメソッドは現在のクリップを小さくする場合に限り使用できます。現在のクリップを大きくするには、任意の setClip メソッドを使用します。クリッピング領域外で描画操作を行なっても効果はありません。
x
- 交差してクリップする矩形の x 座標y
- 交差してクリップする矩形の y 座標width
- 交差してクリップする矩形の幅height
- 交差してクリップする矩形の高さsetClip(int, int, int, int)
,
setClip(Shape)
public abstract void setClip(int x, int y, int width, int height)
x
- 新しいクリップ矩形の x 座標y
- 新しいクリップ矩形の y 座標width
- 新しいクリップ矩形の幅height
- 新しいクリップ矩形の高さclipRect(int, int, int, int)
,
setClip(Shape)
,
getClip()
public abstract Shape getClip()
setClip(null)
を使用してクリアされている場合は、このメソッドは null
を返します。
Shape
オブジェクト。クリップが設定されていない場合は null
getClipBounds()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
,
setClip(Shape)
public abstract void setClip(Shape clip)
Shape
インタフェースを実装するすべてのオブジェクトを使えるわけではありません。サポートが保証されている唯一の Shape
オブジェクトは、getClip
メソッドを使うか Rectangle
オブジェクトを使って取得される Shape
オブジェクトだけです。このメソッドは、デバイス境界やウィンドウ可視に関連したクリックピングに依存しないユーザークリップを設定します。
clip
- クリップ設定に使用する Shape
getClip()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
public abstract void copyArea(int x, int y, int width, int height, int dx, int dy)
dx
と dy
で指定された距離でコピーします。このメソッドは x
と y
で指定された点から、コンポーネントの下方向および右方向の領域をコピーします。コンポーネントの左方向および上方向の領域をコピーするには、dx
と dy
に負の値を指定します。ソースの矩形のある部分がコンポーネントの境界外にある場合や別のコンポーネントやウィンドウで隠されている場合は、copyArea
は対応しているピクセルをコピーできません。隠された領域は、そのコンポーネントの paint
メソッドを呼び出すことにより再描画されます。
x
- ソース矩形の x 座標y
- ソース矩形の y 座標width
- ソース矩形の幅height
- ソース矩形の高さdx
- ピクセルをコピーする水平距離dy
- ピクセルをコピーする垂直距離public abstract void drawLine(int x1, int y1, int x2, int y2)
(x1, y1)
と点 (x2, y2)
との間に現在の色を使って線を描きます。
x1
- 最初の点の x 座標y1
- 最初の点の y 座標x2
- 2 番目の点の x 座標y2
- 2 番目の点の y 座標public abstract void fillRect(int x, int y, int width, int height)
x
と x + width - 1
で、上端と下端はそれぞれ y
と y + height - 1
です。これで指定される矩形は、幅 width
ピクセル、高さ height
ピクセルの領域です。矩形は、グラフィックスコンテキストの現在の色を使って塗りつぶされます。
x
- 塗りつぶされる矩形の x 座標y
- 塗りつぶされる矩形の y 座標width
- 塗りつぶされる矩形の幅height
- 塗りつぶされる矩形の高さclearRect(int, int, int, int)
,
drawRect(int, int, int, int)
public void drawRect(int x, int y, int width, int height)
x
と x + width
、上端と下端がそれぞれ y
と y + height
で指定されます。矩形は、グラフィックスコンテキストの現在の色を使って描画されます。
x
- 描画される矩形の x 座標y
- 描画される矩形の y 座標width
- 描画される矩形の幅height
- 描画される矩形の高さfillRect(int, int, int, int)
,
clearRect(int, int, int, int)
public abstract void clearRect(int x, int y, int width, int height)
Java 1.1 以降は、オフスクリーンのイメージのバックグラウンドカラーはシステムにより異なります。アプリケーションは setColor
に続けて fillRect
を使うことによって、オフスクリーンイメージをクリアして特定の色にすることを保証します。
x
- クリア対象の矩形の x 座標y
- クリア対象の矩形の y 座標width
- クリア対象の矩形の幅height
- クリア対象の矩形の高さfillRect(int, int, int, int)
,
drawRect(int, int, int, int)
,
setColor(java.awt.Color)
,
setPaintMode()
,
setXORMode(java.awt.Color)
public abstract void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
x
と x + width
、上端と下端がそれぞれ y
と y + height
で指定されます。
x
- 描画される矩形の x 座標y
- 描画される矩形の y 座標width
- 描画される矩形の幅height
- 描画される矩形の高さarcWidth
- 4 隅の弧の水平方向の直径arcHeight
- 4 隅の弧の垂直方向の直径fillRoundRect(int, int, int, int, int, int)
public abstract void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
x
と x + width - 1
、上端と下端がそれぞれ y
と y + height - 1
で指定されます。
x
- 塗りつぶされる矩形の x 座標y
- 塗りつぶされる矩形の y 座標width
- 塗りつぶされる矩形の幅height
- 塗りつぶされる矩形の高さarcWidth
- 4 隅の弧の水平方向の直径arcHeight
- 4 隅の弧の垂直方向の直径drawRoundRect(int, int, int, int, int, int)
public void draw3DRect(int x, int y, int width, int height, boolean raised)
強調表示効果に使われる色は、現在の色に基づいて指定されます。描画された矩形は、幅 width + 1
ピクセル、高さ height + 1
ピクセルの領域をカバーします。
x
- 描画される矩形の x 座標y
- 描画される矩形の y 座標width
- 描画される矩形の幅height
- 描画される矩形の高さraised
- 矩形が表面から浮き出たように見えるか、表面に彫り込まれたように見えるかを指定する booleanfill3DRect(int, int, int, int, boolean)
public void fill3DRect(int x, int y, int width, int height, boolean raised)
x
- 塗りつぶされる矩形の x 座標y
- 塗りつぶされる矩形の y 座標width
- 塗りつぶされる矩形の幅height
- 塗りつぶされる矩形の高さraised
- 矩形が表面から浮き出たように見えるか、表面に彫り込まれたように見えるかを指定するboolean 値draw3DRect(int, int, int, int, boolean)
public abstract void drawOval(int x, int y, int width, int height)
x
、y
、width
、height
で指定される矩形内に収まる円または楕円が描かれます。
楕円は、幅 width + 1
ピクセル、高さ height + 1
ピクセルの領域をカバーします。
x
- 描画される楕円の左上隅の x 座標y
- 描画される楕円の左上隅の y 座標width
- 描画される楕円の幅height
- 描画される楕円の高さfillOval(int, int, int, int)
public abstract void fillOval(int x, int y, int width, int height)
x
- 塗りつぶされる楕円の左上隅の x 座標y
- 塗りつぶされる楕円の左上隅の y 座標width
- 塗りつぶされる楕円の幅height
- 塗りつぶされる楕円の高さdrawOval(int, int, int, int)
public abstract void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)
startAngle
から始まって arcAngle
の角度で展開された弧が、現在の色を使って描かれます。角度は 3 時の位置を 0 度として変換され、正の値は反時計方向、負の値は時計方向の回転を示します。
弧の中心は、原点が (x, y) で、サイズが width
引数と height
引数で指定される矩形の中心となります。
描かれる弧は、幅 width + 1
ピクセル、高さ height + 1
ピクセルの領域をカバーします。
角度の広がりは、直角でない、境界の矩形を基準に指定し、楕円の中心から境界の矩形の右上隅までを結ぶ線が常に 45 度になるようにします。境界の矩形の軸の長さがかなり違う場合には、弧セグメントの開始角度と終了角度は境界の長軸にそってさらに傾斜します。
x
- 描画される弧の左上隅の x 座標y
- 描画される弧の左上隅の y 座標width
- 描画される孤の幅height
- 描画される孤の高さstartAngle
- 開始角度arcAngle
- 開始角度に対する弧の展開角度の大きさfillArc(int, int, int, int, int, int)
public abstract void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
startAngle
から始まって arcAngle
の角度で展開された弧が描かれます。角度は 3 時の位置を 0 度として変換され、正の値は反時計方向、負の値は時計方向の回転を示します。
弧の中心は、原点が (x, y) で、サイズが width
引数と height
引数で指定される矩形の中心となります。
描かれる弧は、幅 width + 1
ピクセル、高さ height + 1
ピクセルの領域をカバーします。
角度の広がりは、直角でない、境界の矩形を基準に指定し、楕円の中心から境界の矩形の右上隅までを結ぶ線が常に 45 度になるようにします。境界の矩形の軸の長さがかなり違う場合には、弧セグメントの開始角度と終了角度は境界の長軸にそってさらに傾斜します。
x
- 塗りつぶされる弧の左上隅の x 座標y
- 塗りつぶされる弧の左上隅の y 座標width
- 塗りつぶされる孤の幅height
- 塗りつぶされる孤の高さstartAngle
- 開始角度arcAngle
- 開始角度に対する弧の展開角度の大きさdrawArc(int, int, int, int, int, int)
public abstract void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
xPoints
- x 点の配列yPoints
- y 点の配列nPoints
- 点の総数drawPolygon(int[], int[], int)
public abstract void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)
このメソッドは、nPoint
ラインセグメントによって定義される多角形を描きます。 この場合、最初の nPoint - 1
ラインセグメントは、1 ≤ i ≤ nPoints
に対する、(xPoints[i - 1], yPoints[i - 1])
から (xPoints[i], yPoints[i])
までのラインセグメントです。最後の点と最初の点が一致しない場合、それらを接続するラインを描画すれば図は自動的に閉じます。
xPoints
- x
座標の配列yPoints
- y
座標の配列nPoints
- 点の総数fillPolygon(int[], int[], int)
,
drawPolyline(int[], int[], int)
public void drawPolygon(Polygon p)
Polygon
オブジェクトによって定義される多角形の輪郭を描きます。
p
- 描画対象の多角形fillPolygon(int[], int[], int)
,
drawPolyline(int[], int[], int)
public abstract void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)
このメソッドは、nPoint
ラインセグメントによって定義される多角形を描きます。 この場合、最初の nPoint - 1
ラインセグメントは、1 ≤ i ≤ nPoints
に対する、(xPoints[i - 1], yPoints[i - 1])
から (xPoints[i], yPoints[i])
までのラインセグメントです。最後の点と最初の点が一致しない場合、それらを接続するラインを描画すれば図は自動的に閉じます。
多角形内の領域は、偶奇塗りつぶし規則 (交互規則ともいう) を使って定義されます。
xPoints
- x
座標の配列yPoints
- y
座標の配列nPoints
- 点の総数drawPolygon(int[], int[], int)
public void fillPolygon(Polygon p)
多角形内の領域は、偶奇塗りつぶし規則 (交互規則ともいう) を使って定義されます。
p
- 塗りつぶし対象の多角形drawPolygon(int[], int[], int)
public abstract void drawString(String str, int x, int y)
str
- 描画される文字列x
- x 座標y
- y 座標
NullPointerException
- str
が null
の場合drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public abstract void drawString(AttributedCharacterIterator iterator, int x, int y)
TextAttribute
クラスの仕様に基づいて属性を適用します。
左端の文字のベースラインは、このグラフィックスコンテキストの座標系の位置 (x, y) にあります。
iterator
- 描画されるテキストを持つ反復子x
- x 座標y
- y 座標
NullPointerException
- iterator
が null
の場合drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public void drawChars(char[] data, int offset, int length, int x, int y)
data
- 描画される文字の配列offset
- データの開始オフセットlength
- 描画される文字数x
- テキストのベースラインの x 座標y
- テキストのベースラインの y 座標
NullPointerException
- data
が null
の場合
IndexOutOfBoundsException
- offset
または length
がゼロより小さい場合、あるいは offset+length
が data
配列の長さよりも大きい場合drawBytes(byte[], int, int, int, int)
,
drawString(java.lang.String, int, int)
public void drawBytes(byte[] data, int offset, int length, int x, int y)
各バイトは範囲 0 〜 255 の Unicode コードポイントとして解釈されるため、このメソッドの使用は推奨されません。この範囲にあるラテン文字を描く場合だけ使用できます。
data
- 描画されるデータoffset
- データの開始オフセットlength
- 描画されるバイト数x
- テキストのベースラインの x 座標y
- テキストのベースラインの y 座標
NullPointerException
- data
が null
の場合
IndexOutOfBoundsException
- offset
または length
がゼロより小さい場合、あるいは offset+length
が data
配列の長さよりも大きい場合drawChars(char[], int, int, int, int)
,
drawString(java.lang.String, int, int)
public abstract boolean drawImage(Image img, int x, int y, ImageObserver observer)
完全なイメージがロード済みでなく、現在の出力デバイスに対してディザリング済みおよび変換済みでなくても、このメソッドはすべての場合にただちに復帰します。
イメージが完全にロードされ、ピクセルが変更されなくなった場合、drawImage
は true
を返します。イメージが完全にロードされていない場合、drawImage
は false
を返し、イメージのさらに多くの部分が利用可能になるか、アニメーションの別のフレームに描画され、イメージをロードするプロセスにより指定のイメージオブザーバに通知されます。
img
- 描画される指定イメージimg
が null の場合には何も行わないx
- x 座標y
- y 座標observer
- イメージがさらに変換されることが通知されるオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)
イメージは、このグラフィックスコンテキストの座標空間の指定された矩形内に描画され、必要に応じてスケーリングされます。透明ピクセルは、そこにすでに存在するどのようなピクセルにも影響しません。
このメソッドは、イメージ全体が現在の出力デバイスに対してスケーリング済み、ディザリング済み、変換済みでなくても、すべての場合にただちに復帰します。現在の出力表現がまだ完全でない場合、drawImage
は false
を返します。より多くのイメージが利用可能になると、イメージをロードするプロセスが、その imageUpdate
メソッドを呼び出すことによってイメージオブザーバに通知します。
スケーリングしていないイメージをこの出力デバイス用に構築しているという理由だけで、スケーリングしたイメージをただちに使用できるとはかぎりません。イメージはサイズごとに個別にキャッシュされ、元のデータから別のイメージ作成シーケンスによって生成されることもあるからです。
img
- 描画される指定イメージimg
が null の場合には何も行わないx
- x 座標y
- y 座標width
- 矩形の幅height
- 矩形の高さobserver
- イメージがさらに変換されることが通知されるオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)
この操作は、指定されたイメージの幅と高さの矩形を指定された色で塗りつぶしてから、その上にイメージを描くことに相当しますが、おそらくそれより効率的です。
完全なイメージがロード済みでなく、現在の出力デバイスに対してディザリング済みおよび変換済みでなくても、このメソッドはすべての場合にただちに復帰します。
イメージが完全にロードされ、ピクセルが変更されなくなった場合、drawImage
は true
を返します。イメージが完全にロードされていない場合、drawImage
は false
を返し、イメージのさらに多くの部分が利用可能になるか、アニメーションの別のフレームに描画され、イメージをロードするプロセスにより指定のイメージオブザーバに通知されます。
img
- 描画される指定イメージimg
が null の場合には何も行わないx
- x 座標y
- y 座標bgcolor
- イメージの不透明でない部分の下に塗られるバックグラウンドカラーobserver
- イメージがさらに変換されることが通知されるオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
イメージは、このグラフィックスコンテキストの座標空間の指定された矩形内に描画され、必要に応じてスケーリングされます。透明ピクセルは指定されたバックグラウンドカラーで描画されます。この操作は、指定されたイメージの幅と高さの矩形を指定された色で塗りつぶしてから、その上にイメージを描くことに相当しますが、おそらくそれより効率的です。
このメソッドは、イメージ全体が現在の出力デバイスに対してスケーリング済み、ディザリング済み、変換済みでなくても、すべての場合にただちに復帰します。現在の出力表現がまだ完全でない場合、drawImage
は false
を返します。より多くのイメージが利用可能になると、イメージをロードするプロセスにより指定のイメージオブザーバに通知されます。
スケーリングしていないイメージをこの出力デバイス用に構築しているという理由だけで、スケーリングしたイメージをただちに使用できるとはかぎりません。イメージはサイズごとに個別にキャッシュされ、元のデータから別のイメージ作成シーケンスによって生成されることもあるからです。
img
- 描画される指定イメージimg
が null の場合には何も行わないx
- x 座標y
- y 座標width
- 矩形の幅height
- 矩形の高さbgcolor
- イメージの不透明でない部分の下に塗られるバックグラウンドカラーobserver
- イメージがさらに変換されることが通知されるオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
このメソッドは、描画されるイメージ領域が現在の出力デバイスに対してスケーリング済み、ディザリング済み、変換済みでなくても、すべての場合にただちに復帰します。現在の出力表現がまだ完全でない場合、drawImage
は false
を返します。より多くのイメージが利用可能になると、イメージをロードするプロセスにより指定のイメージオブザーバに通知されます。
このメソッドは常にスケーリングされていないイメージを使って、スケーリングされた矩形を描いて、必要なスケーリングをただちに実行します。これはこの操作に対しては、キャッシュされたスケーリング済みのイメージを使用しません。ソース矩形の最初の座標をデスティネーション矩形の最初の座標に、ソースの 2 番目の座標をデスティネーションの 2 番目の座標にといった対応でマッピングして、ソースからデスティネーションへのイメージのスケーリングを実行します。サブイメージは、その割り当てを維持する必要性に応じ、スケーリングされ反転されます。
img
- 描画される指定イメージimg
が null の場合には何も行わないdx1
- 出力先の矩形の最初の隅の x 座標dy1
- 出力先の矩形の最初の隅の y 座標dx2
- 出力先の矩形の 2 番目の隅の x 座標dy2
- 出力先の矩形の 2 番目の隅の y 座標sx1
- ソース矩形の最初の隅の x 座標sy1
- ソース矩形の最初の隅の y 座標sx2
- ソース矩形の 2 番目の隅の x 座標sy2
- ソース矩形の 2 番目の隅の y 座標observer
- イメージがさらにスケーリングされ、変換されることを通知するオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
透明ピクセルは指定されたバックグラウンドカラーで描画されます。この操作は、指定されたイメージの幅と高さの矩形を指定された色で塗りつぶしてから、その上にイメージを描くことに相当しますが、おそらくそれより効率的です。
このメソッドは、描画されるイメージ領域が現在の出力デバイスに対してスケーリング済み、ディザリング済み、変換済みでなくても、すべての場合にただちに復帰します。現在の出力表現がまだ完全でない場合、drawImage
は false
を返します。より多くのイメージが利用可能になると、イメージをロードするプロセスにより指定のイメージオブザーバに通知されます。
このメソッドは常にスケーリングされていないイメージを使って、スケーリングされた矩形を描いて、必要なスケーリングをただちに実行します。これはこの操作に対しては、キャッシュされたスケーリング済みのイメージを使用しません。ソース矩形の最初の座標をデスティネーション矩形の最初の座標に、ソースの 2 番目の座標をデスティネーションの 2 番目の座標にといった対応でマッピングして、ソースからデスティネーションへのイメージのスケーリングを実行します。サブイメージは、その割り当てを維持する必要性に応じ、スケーリングされ反転されます。
img
- 描画される指定イメージimg
が null の場合には何も行わないdx1
- 出力先の矩形の最初の隅の x 座標dy1
- 出力先の矩形の最初の隅の y 座標dx2
- 出力先の矩形の 2 番目の隅の x 座標dy2
- 出力先の矩形の 2 番目の隅の y 座標sx1
- ソース矩形の最初の隅の x 座標sy1
- ソース矩形の最初の隅の y 座標sx2
- ソース矩形の 2 番目の隅の x 座標sy2
- ソース矩形の 2 番目の隅の y 座標bgcolor
- イメージの不透明でない部分の下に塗られるバックグラウンドカラーobserver
- イメージがさらにスケーリングされ、変換されることを通知するオブジェクト
false
、そうでない場合は true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract void dispose()
Graphics
オブジェクトを dispose
の呼び出し後に使用することはできません。
Java プログラムが実行されていると、短時間フレーム内で多数の Graphics
オブジェクトを作成できます。ガベージコレクタのファイナライズプロセスも同じシステムリソースを破棄しますが、関連するリソースを手動で解放することが推奨されます。 つまり、長期間に渡って完了まで実行されない可能性があるファイナライズプロセスに依存するよりも、このメソッドを呼び出してリソースを手動で解放してください。
コンポーネントの paint
メソッドと update
メソッドに引数として提供される Graphics オブジェクトは、こうしたメソッドが復帰したときにシステムによって自動的に解放されます。効率性を確保するには、Graphics
オブジェクトがコンポーネントまたはほかの Graphics
オブジェクトから直接作成された場合だけ、そのオブジェクトを使って終了したときに dispose
を呼び出すようにプログラミングしなければいけません。
finalize()
,
Component.paint(java.awt.Graphics)
,
Component.update(java.awt.Graphics)
,
Component.getGraphics()
,
create()
public void finalize()
Object
内の finalize
dispose()
public String toString()
Graphics
オブジェクトの値を表現している、String
オブジェクトを返します。
Object
内の toString
@Deprecated public Rectangle getClipRect()
getClipBounds()
に置き換えられました。
null
public boolean hitClip(int x, int y, int width, int height)
x
- 現在のクリッピング領域と比較される矩形の x 座標y
- 現在のクリッピング領域と比較される矩形の y 座標width
- 現在のクリッピング領域と比較される矩形の幅height
- 現在のクリッピング領域と比較される矩形の高さ
true
、そうでない場合は false
public Rectangle getClipBounds(Rectangle r)
getClipBounds
とは異なり、新しいものを割り当てないで既存の矩形を使用します。このメソッドは、デバイス境界やウィンドウ可視に関連したクリッピングには依存しないユーザークリップを参照します。クリップが設定されていない場合、またはクリップが setClip(null)
を使用してクリアされている場合は、このメソッドは指定した Rectangle
を返します。
r
- 現在のクリッピング領域のコピー先の矩形。この矩形に現在の値があれば上書きされる
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。