實(shí)例010 繪制文本
實(shí)例說明
本實(shí)例演示如何在Java中繪制文本。運(yùn)行程序,將在窗體上繪制文本,效果如圖1.10所示。
關(guān)鍵技術(shù)
本實(shí)例主要是通過在JPanel類的子類中,重寫JComponent類的paint()方法,并在該方法中使用Graphics類的drawString()方法來實(shí)現(xiàn)的。
drawString()方法的定義如下:
public abstract void drawString(String str, int x, int y)
參數(shù)說明
? str:繪制的文本內(nèi)容。
? x:繪制點(diǎn)的x坐標(biāo)。
? y:繪制點(diǎn)的y坐標(biāo)。
設(shè)計(jì)過程
(1)新建一個(gè)項(xiàng)目。
(2)在項(xiàng)目中創(chuàng)建一個(gè)繼承JFrame類的DrawTextStringFrame窗體類。
(3)在DrawTextStringFrame窗體類中,創(chuàng)建內(nèi)部面板類DrawTextStringPanel,并重寫JComponent類的paint()方法,在該方法中使用Graphics類的drawString()方法繪制文本。
(4)將內(nèi)部面板類DrawTextStringPanel的實(shí)例,添加到窗體類DrawTextStringFrame的內(nèi)容面板上,用于在窗體上顯示繪制的文本,代碼如下:
class DrawTextStringPanel extends JPanel { // 創(chuàng)建內(nèi)部面板類
public void paint(Graphics g) { // 重寫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)的圖片,或者要作為宣傳的圖片,可以通過使用drawString()方法,將用到的文字繪制到圖片上,從而得到所謂的“水印文字”。