java.awt.Color类

x33g5p2x  于2022-07-13 转载在 Java  
字(1.5k)|赞(0)|评价(0)|浏览(487)

Color类概述

Color是用来封装颜色的,支持多种颜色空间,默认为RGB颜色空间。每个Color对象都有一个alpha通道,值为0到255,代表透明度,当alpha通道值为255时,表示完全不透明;当alpha通道值为0时,表示完全透明,前三个量不起作用;当alpha通道的值为0~255之间的值时,代表指定颜色不同程度的透明度。

Color类预定义的颜色常量

颜色名预定义的颜色名红色值绿色值蓝色值
白色white255255255
浅灰色lightGray192192192
灰色gray128128128
深灰色darkGray646464
黑色black000
红色red25500
粉色pink255175175
橙色orange2552000
黄色yellow2552550
绿色green02550
品红色magenta2550255
青色cyan0255255
蓝色blue00255

通过Color构造函数自定义颜色

Color的构造函数:

Color(int,int,int): 指定RGB值0~255,alpha通道为默认值255,即不透明
Color(int,int,int,int): 指定RGB、alpha通道的值,0~255
Color(int): 指定RGB值,其中int转换为16进制表示形式,0xff000000,其中ff为alpha通
道,为默认值255,16~23 bit 为R,8~15 bit 为G,0~7 bit 为B
Color(int, boolean): 如果boolean只为True,则int值转换为包含alpha通道的16进制,
24~32 bit 为alpha通道值,否则alpha通道值为255
Color(float,float,float): 指定RGB值,范围0.0~1.0,alpha通道默认为1.0
Color(float,float,float,float): 指定RGB、alpha通道的值,范围为0.0~1.0
Colr(ColorSpace,float[],float): 三个参数分别为颜色空间、各通道颜色值组成的数组,
alpha通道值,其中float[]数组中元素的个数取决于颜色空间,如RGB颜色空间为3,CMYK颜色空
间为4

Color对象的方法

getRed(): 获取Red通道的值
getGreen(): 获取Green通道的值
getBlue(): 获取Blue通道的值
getAlpha(): 获取alpha通道的值
getRGB(): 获取颜色的RGB、alpha通道的值,转换为16进制后,24~31 bit为alpha通道,
16~23 bit 为red,8~15 bit 为green通道,0~6 bit 为blue通道
brighter(): 返回一个比当前颜色浅一级的Color对象
darker(): 返回一个比当前颜色深一级的Color对象
equals(Object): 比较两个颜色对象是否颜色相同
getColor(String): 获取某个字符串的系统属性的值,所对应的颜色,返回一个Color对象,否则返回null
getColor(String,Color): 同上,如果Sring对应的系统属性值为null,则返回Color值
getColor(String,int): 同上,否则返回int值所对应的Color对象
getColorSpace(): 返回颜色空间
HSBtoRGB(float,float,float): 从HSB空间转换到RGB空间,返回RGB空间对应的int值,不含alpha通道
RGBtoHSB(): 从RGB空间转换到HSB空间,返回HSB空间对应的float值,不含alpha通道

相关文章