第十九章总结

一、Java绘图类:绘图是高级程序设计中非常重要的技术。例如,应用程序可以绘制闪屏图片、背景图片、组件列观等,Web 程序可以绘制统计图、数据库存储的图片资源等。

1.Graphics类:Graphics 类是所有图形上下文的抽象基类,它允许应用程序在组件以及闭屏图像上进行绘制.

2. Graphics2D类:使用Graphics 类可以完成简单的图形绘制任务,但是它所实现的功能非常有限,如无法改变线条的粗细、不能对图片使用旋转和模糊等过滤效果。

二、绘制图形:Java可以分别使用Graphics 类和 Graphics2D 类绘制图形,Graphics类使用不同的方法实现不同图形的绘制。例如,drawLine0方法可以绘制直线,drawRect0方法用于绘制矩形,drawOval0方法用于绘制椭圆形等。

三、绘图颜色与画笔属性:Java 语言使用 Color 类封装颜色的各种属性,并对颜色进行管理。另外,在绘制图形时还可以指定线的粗细和虚实等画笔属性。

1.设置颜色:使用Color类可以创建任意颜色的对象,不用担心平台是否支持该颜色。因为Jaa以跨平台和与硬件无关的方式支持颜色管理。创建 Color 对象的构造方法有如下两种:
Colar col = new Color(int r, int g, int b)                                                                                        Color col = new Color(int rgb)
已 gb:颜色值,该值是红、绿、蓝三原色的总和
该参数是三原色中红色的取值。
该参数是三原色中绿色的取值
该参数是三原色中蓝色的取值。

2.设置画笔:默认情况下,Graphics 类使用的画笔属性是粗细为1个像素的正方形,而 Graphics2D 类可以调setStroke0方法设置画笔的属性,如改变线条的粗细、虚实,定义线段端点的形状、风格等。语法格式如下:setStroke(Stroke stroke)
其中,参数 stroke 是 Stroke 接口的实现类对象。
setStroke0)方法必须接受一个Stroke 接口的实现类对象作参数,javaawt 包中提供了 BasicStroke类它实现了 Stroke 接口,并且通过不同的构造方法创建画笔属性不同的对象。这些构造方法如下:
BasicStroke()。
BasicStroke(float width)。
BasicStroke(float width, int cap, int join)。
BasicStroke(float width, int cap, int join, float miterlimit)。
BasicStroke(float width, int cap, int join, float miterlimit, floatl] dash, float dash phase)。

四、绘制文本:java 绘图类也可以用来绘制文本内容,且可以在绘制前设置字体的样式、大小等。

1.设置字体:使用Font类封装了字体的大小、样式等属性,该类在java.awt 包中定文,其构造方法可以指亲等体的名称、大小和样式3个属性。语法如下:
fonString name, int style, int size)

2.显示文字:Graphics2D类提供了 drawString0方法,使用该方法可以实现图形上下文的文本绘制,从而实图片上显示文字的功能。语法格式有如下两种:
drawString(String str, int x, int y)        drawString(String str, float x, float y)
str:要绘制的文本字符串。
x:绘制字符串的水平起始位置。
y:绘制字符串的垂直起始位置。
这两个方法唯一不同的就是x和y的参数类型不同。

五、显示图片:绘图类不仅可以绘制图形和文本,还可以使用drawImage0方法将图片资源显示到绘图上下文中,而且可以实现各种特效处理,如图片的缩放、翻转等。

drawlmage(lmage img, int x, int y, lmageObserver observer)
该方法将img 图片显示在x、y 指定的位置上。

六、图像处理:开发高级的桌面应用程序,必须掌握一些图像处理与动画制作的技术,如在程序中显示统计图、销售趋势图、动态按钮等。

1.放大与缩小:使用了 drawImage0方法将图片以原始大小显示在窗体中,要想实现图片的放大与缩小,则需要使用它的重载方法。语法如下:
drawlmage(lmage img, int x, int y, int width, int height, lmageObserver observer)

2.图像翻转:图像的翻转需要使用drawImage0方法的另一个重载方法。语法如下:

drawimage(lmage img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, lmageObserver observer)

3.图像旋转:图像旋转需要调用Graphics2D类的 rotate0方法,该方法将根据指定的弧度旋转图像。语法如下:        rotate(double theta)        其中,theta 是指旋转的弧度。

4. 图像倾斜:可以使用 Graphics2D 类提供的 shear0方法设置绘图的倾斜方向,从而使图像实现倾斜的效果。语法如下:shear(double shx, double shy)                                                                    shx:水平方向的倾斜量。       shy:垂直方向的倾斜量。

例题19.1-19.8:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值