正文

Java圖形與文本(9)

Java開(kāi)發(fā)實(shí)戰(zhàn)1200例(第II卷) 作者:李鐘尉


實(shí)例010  繪制文本

實(shí)例說(shuō)明

本實(shí)例演示如何在Java中繪制文本。運(yùn)行程序,將在窗體上繪制文本,效果如圖1.10所示。

關(guān)鍵技術(shù)

本實(shí)例主要是通過(guò)在JPanel類(lèi)的子類(lèi)中,重寫(xiě)JComponent類(lèi)的paint()方法,并在該方法中使用Graphics類(lèi)的drawString()方法來(lái)實(shí)現(xiàn)的。

drawString()方法的定義如下:

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

參數(shù)說(shuō)明

? str:繪制的文本內(nèi)容。

? x:繪制點(diǎn)的x坐標(biāo)。

? y:繪制點(diǎn)的y坐標(biāo)。

設(shè)計(jì)過(guò)程

(1)新建一個(gè)項(xiàng)目。

(2)在項(xiàng)目中創(chuàng)建一個(gè)繼承JFrame類(lèi)的DrawTextStringFrame窗體類(lèi)。

(3)在DrawTextStringFrame窗體類(lèi)中,創(chuàng)建內(nèi)部面板類(lèi)DrawTextStringPanel,并重寫(xiě)JComponent類(lèi)的paint()方法,在該方法中使用Graphics類(lèi)的drawString()方法繪制文本。

(4)將內(nèi)部面板類(lèi)DrawTextStringPanel的實(shí)例,添加到窗體類(lèi)DrawTextStringFrame的內(nèi)容面板上,用于在窗體上顯示繪制的文本,代碼如下:

class DrawTextStringPanel extends JPanel {  // 創(chuàng)建內(nèi)部面板類(lèi)

    public void paint(Graphics g) {  // 重寫(xiě)paint()方法

        String value = "靜夜思";

        int x = 120;   // 文本位置的橫坐標(biāo)

        int y = 30;   // 文本位置的縱坐標(biāo)

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

        //省略部分代碼

    }

}

秘笈心法

心法領(lǐng)悟010:水印文字的實(shí)現(xiàn)。

對(duì)于一些有可能侵權(quán)的圖片,或者要作為宣傳的圖片,可以通過(guò)使用drawString()方法,將用到的文字繪制到圖片上,從而得到所謂的“水印文字”。

 


上一章目錄下一章

Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)