Java图形与文本(9)

实例010  绘制文本

实例说明

本实例演示如何在Java中绘制文本。运行程序,将在窗体上绘制文本,效果如图1.10所示。

关键技术

本实例主要是通过在JPanel类的子类中,重写JComponent类的paint()方法,并在该方法中使用Graphics类的drawString()方法来实现的。

drawString()方法的定义如下:

public abstract void drawString(String str, int x, int y)

参数说明

? str:绘制的文本内容。

? x:绘制点的x坐标。

? y:绘制点的y坐标。

设计过程

(1)新建一个项目。

(2)在项目中创建一个继承JFrame类的DrawTextStringFrame窗体类。

(3)在DrawTextStringFrame窗体类中,创建内部面板类DrawTextStringPanel,并重写JComponent类的paint()方法,在该方法中使用Graphics类的drawString()方法绘制文本。

(4)将内部面板类DrawTextStringPanel的实例,添加到窗体类DrawTextStringFrame的内容面板上,用于在窗体上显示绘制的文本,代码如下:

class DrawTextStringPanel extends JPanel {  // 创建内部面板类

    public void paint(Graphics g) {  // 重写paint()方法

        String value = "静夜思";

        int x = 120;   // 文本位置的横坐标

        int y = 30;   // 文本位置的纵坐标

        g.drawString(value, x, y);    // 绘制文本

        //省略部分代码

    }

}

秘笈心法

心法领悟010:水印文字的实现。

对于一些有可能侵权的图片,或者要作为宣传的图片,可以通过使用drawString()方法,将用到的文字绘制到图片上,从而得到所谓的“水印文字”。

 

读书导航