public class Color extends Object implements Paint, Serializable
Colorクラスは、デフォルトのsRGBカラー・スペース内の色、またはColorSpaceで識別される任意のカラー・スペース内の色をカプセル化するために使用されます。 どの色にも、1.0の暗黙のアルファ値、またはコンストラクタで提供される明示的なアルファ値があります。 アルファ値は色の透過性を定義し、0.0 - 1.0または0 - 255の範囲のfloat値で表すことができます。 1.0あるいは255というアルファ値はその色が完全に不透明であることを意味し、0あるいは0.0というアルファ値はその色が完全に透明であることを意味します。 明示的なアルファでColorを構築する場合、あるいはColorの色成分またはアルファ成分を取得する場合、色成分とアルファ成分があらかじめ乗算されている可能性はありません。
Java 2D (tm) APIのデフォルトのカラー・スペースは、標準のRGBカラー・スペースとして推奨されているsRGBです。 sRGBの詳細は、http://www.w3.org/pub/WWW/Graphics/Color/sRGB.htmlを参照してください。
ColorSpace, AlphaComposite, 直列化された形式| 修飾子と型 | フィールド | 説明 |
|---|---|---|
static Color |
black |
黒を表します。
|
static Color |
BLACK |
黒を表します。
|
static Color |
blue |
青を表します。
|
static Color |
BLUE |
青を表します。
|
static Color |
cyan |
シアンを表します。
|
static Color |
CYAN |
シアンを表します。
|
static Color |
DARK_GRAY |
ダーク・グレーを表します。
|
static Color |
darkGray |
ダーク・グレーを表します。
|
static Color |
gray |
グレーを表します。
|
static Color |
GRAY |
グレーを表します。
|
static Color |
green |
緑を表します。
|
static Color |
GREEN |
緑を表します。
|
static Color |
LIGHT_GRAY |
ライト・グレーを表します。
|
static Color |
lightGray |
ライト・グレーを表します。
|
static Color |
magenta |
マゼンタを表します。
|
static Color |
MAGENTA |
マゼンタを表します。
|
static Color |
orange |
オレンジを表します。
|
static Color |
ORANGE |
オレンジを表します。
|
static Color |
pink |
ピンクを表します。
|
static Color |
PINK |
ピンクを表します。
|
static Color |
red |
赤を表します。
|
static Color |
RED |
赤を表します。
|
static Color |
white |
白を表します。
|
static Color |
WHITE |
白を表します。
|
static Color |
yellow |
黄を表します。
|
static Color |
YELLOW |
黄を表します。
|
BITMASK, OPAQUE, TRANSLUCENT| コンストラクタ | 説明 |
|---|---|
Color(ColorSpace cspace, float[] components, float alpha) |
float配列で指定された色成分と指定されたアルファを使用して、指定されたColorSpace内に色を作成します。 |
Color(float r, float g, float b) |
範囲(0.0 - 1.0)の指定された赤、緑、青の値を使って、不透明なsRGBカラーを生成します。
|
Color(float r, float g, float b, float a) |
範囲(0.0 - 1.0)の指定された赤、緑、青、およびアルファ値を使ってsRGBカラーを生成します。
|
Color(int rgb) |
ビット16-23の赤色成分、ビット8-15の緑色成分、およびビット0-7の青色成分から合成された、指定されたRGB値を使って、不透明なsRGBカラーを生成します。
|
Color(int rgba, boolean hasalpha) |
ビット24 - 31のアルファ成分、ビット16 - 23の赤色成分、ビット8 - 15の緑色成分、およびビット0 - 7の青色成分で構成される、指定されたRGBA値を持つ、sRGBカラーを生成します。
|
Color(int r, int g, int b) |
範囲(0 - 255)の指定された赤、緑、青の値を使って、不透明なsRGBカラーを生成します。
|
Color(int r, int g, int b, int a) |
範囲(0 - 255)の指定された赤、緑、青、およびアルファ値を使ってsRGBカラーを生成します。
|
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
Color |
brighter() |
この
Colorをより明るくした新しいColorを作成します。 |
PaintContext |
createContext(ColorModel cm, Rectangle r, Rectangle2D r2d, AffineTransform xform, RenderingHints hints) |
塗りつぶした色のフィールド・パターンを生成するために使用される
PaintContextを作成して返します。 |
Color |
darker() |
この
Colorをより暗くした新しいColorを作成します。 |
static Color |
decode(String nm) |
Stringを整数に変換し、指定された不透明なColorを返します。 |
boolean |
equals(Object obj) |
別のオブジェクトがこの
Colorに等しいかどうかを判定します。 |
int |
getAlpha() |
0 - 255の範囲にあるアルファ成分を返します。
|
int |
getBlue() |
デフォルトのsRGB領域の0 - 255の範囲にある青色成分を返します。
|
static Color |
getColor(String nm) |
システム・プロパティの色を検索します。
|
static Color |
getColor(String nm, Color v) |
システム・プロパティの色を検索します。
|
static Color |
getColor(String nm, int v) |
システム・プロパティの色を検索します。
|
float[] |
getColorComponents(ColorSpace cspace, float[] compArray) |
cspaceパラメータによって指定されたColorSpace内にある、Colorの色成分のみを含むfloat配列を返します。 |
float[] |
getColorComponents(float[] compArray) |
ColorのColorSpace内にある、Colorの色成分のみを含むfloat配列を返します。 |
ColorSpace |
getColorSpace() |
この
ColorのColorSpaceを返します。 |
float[] |
getComponents(ColorSpace cspace, float[] compArray) |
cspaceパラメータによって指定されたColorSpace内にある、Colorの色成分およびアルファ成分を含むfloat配列を返します。 |
float[] |
getComponents(float[] compArray) |
ColorのColorSpace内にある、Colorの色成分およびアルファ成分を含むfloat配列を返します。 |
int |
getGreen() |
デフォルトのsRGB領域の0 - 255の範囲にある緑色成分を返します。
|
static Color |
getHSBColor(float h, float s, float b) |
HSBカラー・モデルに指定された値に基づいて、
Colorオブジェクトを作成します。 |
int |
getRed() |
デフォルトのsRGB領域の0 - 255の範囲にある赤色成分を返します。
|
int |
getRGB() |
デフォルトのsRGB
ColorModel内の色を表すRGB値を返します。 |
float[] |
getRGBColorComponents(float[] compArray) |
デフォルトのsRGBカラー・スペース内にある、
Colorの色成分のみを含むfloat配列を返します。 |
float[] |
getRGBComponents(float[] compArray) |
デフォルトのsRGBカラー・スペースで表された、
Colorの色成分およびアルファ成分を含むfloat配列を返します。 |
int |
getTransparency() |
この
Colorの透明度モードを返します。 |
int |
hashCode() |
この
Colorのハッシュ・コードを計算します。 |
static int |
HSBtoRGB(float hue, float saturation, float brightness) |
HSBモデルによって指定される色の成分を、対応するデフォルトのRGBモデルの値のセットに変換します。
|
static float[] |
RGBtoHSB(int r, int g, int b, float[] hsbvals) |
デフォルトのRGBモデルによって指定された色の成分を、HSBモデルの3つの成分である色相、彩度、明度の値の対応するセットに変換します。
|
String |
toString() |
この
Colorの文字列表現を返します。 |
public static final Color white
public static final Color WHITE
public static final Color lightGray
public static final Color LIGHT_GRAY
public static final Color gray
public static final Color GRAY
public static final Color darkGray
public static final Color DARK_GRAY
public static final Color black
public static final Color BLACK
public static final Color red
public static final Color RED
public static final Color pink
public static final Color PINK
public static final Color orange
public static final Color ORANGE
public static final Color yellow
public static final Color YELLOW
public static final Color green
public static final Color GREEN
public static final Color magenta
public static final Color MAGENTA
public static final Color cyan
public static final Color CYAN
public static final Color blue
public static final Color BLUE
public Color(int r,
int g,
int b)
r - 赤色成分g - 緑色成分b - 青色成分IllegalArgumentException - r、g、またはbが0から255までの範囲(両端を含む)外にある場合getRed(), getGreen(), getBlue(), getRGB()@ConstructorProperties(value={"red","green","blue","alpha"}) public Color(int r, int g, int b, int a)
r - 赤色成分g - 緑色成分b - 青色成分a - アルファ成分IllegalArgumentException - r、g、b、またはaが0から255までの範囲(両端を含む)外にある場合getRed(), getGreen(), getBlue(), getAlpha(), getRGB()public Color(int rgb)
rgb - 合成されたRGB成分ColorModel.getRGBdefault(), getRed(), getGreen(), getBlue(), getRGB()public Color(int rgba,
boolean hasalpha)
hasalpha引数がfalseの場合、アルファはデフォルトで255に設定されます。 rgba - 合成されたRGBA成分hasalpha - アルファ・ビットが有効な場合はtrue、そうでない場合はfalseColorModel.getRGBdefault(), getRed(), getGreen(), getBlue(), getAlpha(), getRGB()public Color(float r,
float g,
float b)
r - 赤色成分g - 緑色成分b - 青色成分IllegalArgumentException - r、g、またはbが0.0から1.0までの範囲(両端を含む)外にある場合getRed(), getGreen(), getBlue(), getRGB()public Color(float r,
float g,
float b,
float a)
r - 赤色成分g - 緑色成分b - 青色成分a - アルファ成分IllegalArgumentException - r、g、b、またはaが0.0から1.0までの範囲(両端を含む)外にある場合getRed(), getGreen(), getBlue(), getAlpha(), getRGB()public Color(ColorSpace cspace, float[] components, float alpha)
float配列で指定された色成分と指定されたアルファを使用して、指定されたColorSpace内に色を作成します。 成分の数はColorSpaceの型によって決まります。 たとえばRGBでは3つの成分、CMYKでは4つの成分が必要です。 cspace - 成分を解釈するのに使用されるColorSpacecomponents - ColorSpaceに適合する任意の数の色成分alpha - アルファ値IllegalArgumentException - components配列またはalphaの値のどれかが0.0から1.0の範囲を超えている場合getComponents(float[]), getColorComponents(float[])public int getRed()
getRGB()public int getGreen()
getRGB()public int getBlue()
getRGB()public int getAlpha()
getRGB()public int getRGB()
ColorModel内の色を表すRGB値を返します。 (ビットのうち24 - 31はアルファ、16 - 23は赤、8 - 15は緑、0 - 7は青)。 ColorModelの色のRGB値ColorModel.getRGBdefault(), getRed(), getGreen(), getBlue()public Color brighter()
Colorをより明るくした新しいColorを作成します。
このメソッドは、このColorの3つのRGB成分のそれぞれに任意のスケーリング係数を適用することにより、このColorをより明るくした色を生成します。 alpha値は保持されます。 brighterとdarkerは逆の操作ですが、これらの2つのメソッドを連続して呼び出した場合、丸め誤差のために結果が一致しないことがあります。
alpha値は同じで、このColorをより明るくした、新しいColorオブジェクトdarker()public Color darker()
Colorをより暗くした新しいColorを作成します。
このメソッドは、このColorの3つのRGB成分のそれぞれに任意のスケーリング係数を適用することにより、このColorをより暗くした色を生成します。 alpha値は保持されます。 brighterとdarkerは逆の操作ですが、これらの2つのメソッドを連続して呼び出した場合、丸め誤差のために結果が一致しないことがあります。
alpha値は同じで、このColorをより暗くした、新しいColorオブジェクトbrighter()public int hashCode()
Colorのハッシュ・コードを計算します。hashCode、クラスObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object obj)
Colorに等しいかどうかを判定します。
結果は、引数がnullでなく、このオブジェクトと同じ赤、緑、青、およびアルファの値を持つColorオブジェクトである場合にだけ、trueになります。
equals、クラスObjectobj - このColorと等しいかどうかが判定されるオブジェクトtrue、そうでない場合はfalseObject.hashCode(), HashMappublic String toString()
Colorの文字列表現を返します。 このメソッドは、デバッグ専用です。 返される文字列の内容および形式は実装によって異なります。 返される文字列は空の場合がありますが、nullにはなりません。 public static Color decode(String nm) throws NumberFormatException
Stringを整数に変換し、指定された不透明なColorを返します。 このメソッドは、8進数および16進数を表すのに使用される文字列形式を処理します。 nm - 24ビット整数として不透明色を表すStringColorオブジェクト。NumberFormatException - 指定された文字列を10進、8進、および16進の整数値に変換できない場合Integer.decode(java.lang.String)public static Color getColor(String nm)
引数は取得されるシステム・プロパティの名前として扱われます。 その後、このプロパティの文字列値が整数として解釈され、この整数が次にColorオブジェクトに変換されます。
指定されたプロパティが見つからない場合、または整数値として構文解析できなかった場合、nullが返されます。
nm - カラー・プロパティの名前ColorSystem.getProperty(java.lang.String), Integer.getInteger(java.lang.String), Color(int)public static Color getColor(String nm, Color v)
最初の引数は取得されるシステム・プロパティの名前として扱われます。 その後、このプロパティの文字列値が整数として解釈され、この整数が次にColorオブジェクトに変換されます。
指定されたプロパティが見つからない場合、または整数値として構文解析できなかった場合、代わりに2番目の引数によって指定されたColorが返されます。
nm - カラー・プロパティの名前v - デフォルトのColorColor、または指定されたColorSystem.getProperty(java.lang.String), Integer.getInteger(java.lang.String), Color(int)public static Color getColor(String nm, int v)
最初の引数は取得されるシステム・プロパティの名前として扱われます。 その後、このプロパティの文字列値が整数として解釈され、この整数が次にColorオブジェクトに変換されます。
指定されたプロパティが見つからない場合、または整数値として構文解析できなかった場合、代わりに整数値vが使用され、Colorオブジェクトに変換されます。
nm - カラー・プロパティの名前v - デフォルトのカラー値(整数値)Color、または指定された整数から変換されたColorSystem.getProperty(java.lang.String), Integer.getInteger(java.lang.String), Color(int)public static int HSBtoRGB(float hue,
float saturation,
float brightness)
saturation成分とbrightness成分は、0と1の間の浮動小数点値(0.0から1.0までの範囲の数値)にするようにしてください。 hue成分は、任意の浮動小数点数値にできます。 この数の下限が減算され、0から1の間の小数部が作成されます。 この小数点数に360が乗算され、HSBカラー・モデルの色相角度が生成されます。
HSBtoRGBによって返される整数値は、整数値のビット0 - 23の色の値をgetRGBメソッドによって使用されるのと同じ形式でエンコードします。 この整数は1つの整数の引数をとるColorコンストラクタに引数として渡されます。
hue - 色の色相成分saturation - 色の彩度brightness - 色の明度getRGB(), Color(int), ColorModel.getRGBdefault()public static float[] RGBtoHSB(int r,
int g,
int b,
float[] hsbvals)
hsbvals引数がnullの場合、その結果を返す新しい配列が割り当てられます。 そうでない場合、このメソッドは、配列hsbvalsに値を格納し、その配列を返します。
r - 色の赤色成分g - 色の緑色成分b - 色の青色成分hsbvals - 3つのHSB値を返すのに使用される配列、またはnullgetRGB(), Color(int), ColorModel.getRGBdefault()public static Color getHSBColor(float h, float s, float b)
Colorオブジェクトを作成します。
s成分とb成分は、0と1の間の浮動小数点値(0.0から1.0までの範囲の数値)にするようにしてください。 h成分は、任意の浮動小数点数値にできます。 この数の下限が減算され、0から1の間の小数部が作成されます。 この小数点数に360が乗算され、HSBカラー・モデルの色相角度が生成されます。
h - 色相成分s - 色の彩度b - 色の明度Colorオブジェクトpublic float[] getRGBComponents(float[] compArray)
Colorの色成分およびアルファ成分を含むfloat配列を返します。 compArrayがnullである場合は、戻り値として長さ4の配列が作成されます。 それ以外の場合、compArrayは4以上の長さを持つ必要があり、そこに各成分が入力されて返されます。 compArray - このメソッドが色成分とアルファ成分を入力して返す配列float配列内のRGBA成分public float[] getRGBColorComponents(float[] compArray)
Colorの色成分のみを含むfloat配列を返します。 compArrayがnullである場合は、戻り値として長さ3の配列が作成されます。 それ以外の場合、compArrayは3以上の長さを持つ必要があり、そこに各成分が入力されて返されます。 compArray - このメソッドが色成分を入力して返す配列float配列内のRGB成分public float[] getComponents(float[] compArray)
ColorのColorSpace内にある、Colorの色成分およびアルファ成分を含むfloat配列を返します。 compArrayがnullの場合、関連するColorSpace内の成分数に1を加えた数を長さとして持つ配列が戻り値として生成されます。 それ以外の場合、compArrayは少なくともこの長さを持つ必要があり、そこに各成分が入力されて返されます。 compArray - このメソッドがColorSpaceのこのColorの色成分とアルファ成分を入力して返す配列float配列内の色成分およびアルファ成分。public float[] getColorComponents(float[] compArray)
ColorのColorSpace内にある、Colorの色成分のみを含むfloat配列を返します。 compArrayがnullの場合、関連するColorSpace内の成分数と等しい数を長さとして持つ配列が戻り値として生成されます。 それ以外の場合、compArrayは少なくともこの長さを持つ必要があり、そこに各成分が入力されて返されます。 compArray - このメソッドがColorSpaceのこのColorの色成分を入力して返す配列float配列内の色成分。public float[] getComponents(ColorSpace cspace, float[] compArray)
cspaceパラメータによって指定されたColorSpace内にある、Colorの色成分およびアルファ成分を含むfloat配列を返します。 compArrayがnullの場合、cspace内の成分数に1を加えた数を長さとして持つ配列が戻り値として生成されます。 それ以外の場合、compArrayは少なくともこの長さを持つ必要があり、そこに各成分が入力されて返されます。 cspace - 指定されたColorSpacecompArray - このメソッドが、指定されたColorSpaceのこのColorの色成分とアルファ成分を入力して返す配列float配列内の色成分およびアルファ成分。public float[] getColorComponents(ColorSpace cspace, float[] compArray)
cspaceパラメータによって指定されたColorSpace内にある、Colorの色成分のみを含むfloat配列を返します。 compArrayがnullの場合、cspace内の成分数と等しい数を長さとして持つ配列が戻り値として生成されます。 それ以外の場合、compArrayは少なくともこの長さを持つ必要があり、そこに各成分が入力されて返されます。 cspace - 指定されたColorSpacecompArray - このメソッドが、指定されたColorSpaceのこのColorの色成分を入力する配列float配列内の色成分。public ColorSpace getColorSpace()
ColorのColorSpaceを返します。ColorオブジェクトのColorSpacepublic PaintContext createContext(ColorModel cm, Rectangle r, Rectangle2D r2d, AffineTransform xform, RenderingHints hints)
PaintContextを作成して返します。 nullパラメータの処理については、Paintインタフェース内のメソッドのspecificationを参照してください。 createContext、インタフェースPaintcm - 呼出し元がピクセル・データを受信するためのもっとも便利な形式を表す推奨されるColorModel、または推奨値がない場合はnull。r - 描画されるグラフィックス・プリミティブのデバイス空間でのバウンディング・ボックス。r2d - 描画されるグラフィックス・プリミティブのユーザー空間でのバウンディング・ボックス。xform - ユーザー空間からデバイス空間へのAffineTransform。hints - コンテキスト・オブジェクトが描画の選択肢の中から選択するために使用できるヒントのセット。PaintContext。Paint, PaintContext, ColorModel, Rectangle, Rectangle2D, AffineTransform, RenderingHintspublic int getTransparency()
Colorの透明度モードを返します。 Paintインタフェースを実装するのに必要です。 getTransparency、インタフェースTransparencyColorオブジェクトの透明度モードPaint, Transparency, createContext(java.awt.image.ColorModel, java.awt.Rectangle, java.awt.geom.Rectangle2D, java.awt.geom.AffineTransform, java.awt.RenderingHints) バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。