一.绘制图形
Java 可以分别使用 Graphics类和Graphics2D 类绘制图形,Graphics 类使用不同的方法实现不同图形的绘制。例如,drawLine()方法可以绘制直线,drawRect()方法用于绘制矩形,drawOval()方法用于绘制椭圆形等。
例1.
例2.
二.绘图颜色与画笔属性
1.设置颜色
使用 Color类可以创建任意颜色的对象,不用担心平台是否支持该颜色,因为 Java 以跨平台和与硬件无关的方式支持颜色管理。创建 Color 对象的构造方法有如下两种:
Color col = new Color(int r, int g, int b)
Color col = new Color(int rgb)
绘图类可以使用setColor0方法设置当前颜色。语法如下:
setColor(Color color)
2.设置画笔
默认情况下,Graphics类使用的画笔属性是粗细为1个像素的正方形,而 Graphics2D 类可以调用setStroke0方法设置画笔的属性,如改变线条的粗细、虚实,定义线段端点的形状、风格等。语法格式如下:
setStroke(Stroke stroke)
三.绘制文本
1.设置字体
Java 使用 Font类封装了字体的大小、样式等属性,该类在javaawt 包中定义,其构造方法可以指定字体的名称、大小和样式 3 个属性。语法如下:
Font(String name, int style, int size)
2.显示文字
Graphics2D类提供了drawString0方法,使用该方法可以实现图形上下文的文本绘制,从而实现在图片上显示文字的功能。语法格式有如下两种:
drawString(String str, int x, int y)
drawString(String str, float x, float y)
例3.
四.显示图片
绘图类不仅可以绘制图形和文本,还可以使用drawImage0方法将图片资源显示到绘图上下文中,而且可以实现各种特效处理,如图片的缩放、翻转等。语法如下:
drawlmage(lmage img,int x, int y,ImageObserver observer)
例4.
五.图像处理
1.放大与缩小
drawImage()方法将图片以原始大小显示在窗体中,要想实现图片的放大与缩小,则需要使用它的重载方法。语法如下:
drawlmage(lmage img, int x, int y, int width, int height, lmageObserver observer)
2.图像翻转
图像的翻转需要使用drawImage0方法的另一个重载方法。语法如下:
drawlmage(lmage img, int dx1, int dy1, int dx2, int dy2, int sx1,
int sy1, int sx2, int sy2, lmageObserver observer)
例5.
例6.
3.图像旋转
图像旋转需要调用 Graphics2D 类的 rotate0方法,该方法将根据指定的弧度旋转图像。语法如下:
rotate(double theta)
例7.
4.图像倾斜
可以使用Graphics2D类提供的 shear0方法设置绘图的倾斜方向,从而使图像实现倾斜的效果。语法如下:
shear(double shx, double shy)
例8.