《JAVA 2核心技术 卷Ⅰ:基础知识》第七章:图形程序设计,读书笔记第二部分(7.6-7.8)。
主要内容包括:颜色、为文本设定特殊字体、图像。
一.颜色
Graphics2D类的setPaint方法可以为图形环境上的所有后续绘制操作选择颜色。
Color类用于定义颜色,在java.awt.Color中提供了13个预定义的常量,分别表示13种标准颜色。
(JDK 1.4之前的版本颜色名字是用小写,后来采用大写,为了兼容,就大小写都保留了。)
例如:
g2.setPaint(Color.RED);//绘制操作
可以通过提供RGB三色成分来创建一个Color对象,三种颜色成分都是用0~255之间的整型数值表示。
例如:
g2.setPaint(new Color(0,128,128));//绘制操作
如果使用Graphics对象,而不是Graphics2D对象,就要使用setColor方法设置颜色。
要想设置背景颜色,使用Component类中的setBackground方法。
setForeground方法用来设定在组件上进行绘制时使用的默认颜色。
Color类中的brighter()方法和darker()方法可以分别加亮或者变暗当前的颜色。连续调用可以使效果增强。如:c.brighter().brighter()
SystemColor类中预定义了很多颜色的名字,在这个类中的常量,封装了用户系统的各个元素的颜色。
如SystemColor.window为用户桌面上所有窗口使用的默认颜色。当希望让绘制的用户界面元素与用户桌面上已经存在的其他元素颜色匹配时,使用SystemColor类中的颜色非常有用。
用颜色填充图形,只需要将draw替换为fill就行了。
如:
Rectangle2D rect=…;
g2.setPaint(Color.RED);
g2.fill(rect);
二.为文本设定特殊的字体
计算机上的字体
要想知道某台特定计算机上所允许使用的字体,就需要调用GraphicsEnvironment类中的getAvailableFontFamilyNames方法。这个方法将返回一个字符型数组,其中包含了所有可用的字体名。
GraphicsEnvironment类描述了用户系统的图形环境,为了得到这个类的对象,需要调用静态的getLocalGraphicsEnvironment方法。
下面这个程序将打印出系统上的所有字体名:
ListFonts
/**
@version1.11 2004-06-05@authorCay Horstmann*/
import java.awt.*;public classListFonts
{public static voidmain(String[] args)
{