跟我学Java入门到精通培训教程——Java 2D高级绘图相关应用技术

  • 格式:pdf
  • 大小:305.63 KB
  • 文档页数:19

利用Color类创建出一Color类对象并设置颜色特征 参数(r、 g、b 三基色的分量); 调用 Graphics 类中的 setColor() 将用户的颜色加入到系统中; 再调用绘制函数输出图形、文字等。
字体
利用Font类创建出一Font类对象并设置字体特性参数; 调用Graphics类中的setFont()将用户字体加入到系统中; 再调用绘制函数输出文字(也可以设置按钮等基本控件的字 体 ,如:OK.setFont())
(5)paint()函数
它是在 ponent 类(所有窗口对象的基类)所 提供的一个方法,当系统需要重新绘制组件时,将调用该方 法。 paint() 方法只有一个参数,该参数是 Graphics 类的实例。
2、组件绘制的时机
(1)组件外形发生变化时
如窗口的大小、位置、图标化等显示区域更新时 AWT自动从高层直到叶结点组件相应地调用各组件的 paint() 方法,但这可能有一个迟后感。
(3)代码示例
8、Java 2D 绘图的一些属性
(1)颜色:由Color类表示,与AWT相同,没有变化。 (2)填充方式:可以使用实心颜色Color、梯度填充
GradientPaint、纹理TexturePaint等方式。
(3)方法
使用Graphics2D类中的setPaint()方法并使用Paint对 象作为其参数,但由于任何可以作为填充的类如 GradientPaint、TexturePaint和Color都实现了Paint 接口 该接口注意定义了在Graphics2D下的颜色填充方式,因 此可以将它们作为参数。
(1)有关的类:主要涉及java.awt包中的Graphics类。 (2)Graphics类对象: 它代表当前组件如窗口的绘图环境。 (3)绘制函数
调用Graphics类中的相应的绘制图形、绘制文本、绘制 图像等函数以实现在图形窗口下输出图形、文本、图像等。
(4)编程方法
在组件的paint()函数内或在组件的其它函数内如事件 响应函数内获得java.awt包中的Graphics类的对象,然后调 用Graphics类中相应的绘制函数来实现输出。
(4) GradientPaint的代码示例
(2)程序员也可
直接调用某一个组件的repaint()或paint() 以立即更新外观(如在添加新的显示内容后) 。
注意:
如果要求保留上次的输出结果时可以调用 paint() 而不要求保留上次的输出结果只希望用户能看到最新的输出 结果时可以调用repaint()。
(3)AWT响应外部的事件时
如首先显示于屏幕或需刷新时 AWT也会直接调用repaint()函数。
3、如何获取Graphics类对象并绘制
(1)原理 绘制之前,必须先获取Graphics类对象 因为它包含有当前组件的绘图环境,从而实现在当前 组件(如图形窗口)内输出。 注意:使用Graphics类时,不能直接生成图形对象
跟我学Java入门到精通培训教程 ——Java 2D高级绘图相关应用技术
跟我学Java入门到精通培训教程 ——Java 2D高级绘图相关应用技术
在本讲中您能了解如下知识点 Graphics类 如何获取Graphics类 中文本字串的显示 图形编程 图像编程 Java 2D高级绘图
1、AWT图形、文本、图像绘制编程
(2)方法一 在paint()内则可通过其形参(它代表当前组件的绘图 环境),从而调用Graphics类中的相关的绘制成员函数。
(3)方法二 先在组件类(如Applet、Frame或其它组件的成员函 数)中调用getGraphics()(它返回当前组件的 Graphics类对象)来获取当前组件的绘图环境,再强 制绘制输出
从而可在paint()函数之外(如事件响应函数内)产 生绘制动作。
4、AWT 中文本字串的显示
(1)方法
应调用Graphics 类中相应的输出函数:g.drawString(“待 输出的文字串”,x文本的左下角的坐标值,程序例如下:
(2)文字的颜色和字体编程
颜色
实例程序
5、AWT 中的图形编程
1、图形函数
Graphics 类中的图形函数主要可以分为如下几种: 跟踪形状轮廓的绘制方法(点、线和面) 填充形状轮廓的绘制方法 其它杂项方法
6、AWT 中的图像编程
(1)文件格式:支持*.gif、*.jpeg、*.Png等
(2)加载图像的方法 Applet中加载图像:直接调用getImage() Image myImage = getImage(URL address, imageFileName); Application中加载图像:利用Toolkit 类中的getImage(), 如: Image myImage =Toolkit .getDefaultToolkit(). getImage(imageFileName); 程序例 (1)JavaExmp\Java2D\AWT\Step3中的手画线 (2)JavaExmp\Java2D\AWT\Step4、 Step5中的拖放图像和回 弹 (3)JavaExmp\Java2D\AWT\Step6中的线程中缩放图像
7、Java 2D高级绘图
(1)Java 2D的增强功能:主要体现在
对渲染质量的控制 ;
裁剪、合成和透明度 ;
绘制和填充简单及复杂的形状 图像处理和变换 特殊的填充方式 高级字体处理和字符串格式化
(2)转换Graphics2D对象
绘制图形时,可以在Graphics对象或者Graphics2D对象 上进行,它们都代表了需要绘图的区域。 选择那个取决于是否要使用所增加的Java2D的图形功能。 但要注意的是,所有的Java2D图形操作都必须在 Graphics2D对象上调用。 Graphics2D是Graphics的子类,同样包含在java.awt包 中。