使用Java設(shè)置字型和顏色的方法詳解
Java繪圖中,顯示文字的方法主要有三種:
(1)drawString(String str,int x,int y):在指定的位置顯示字符串。
(2)drawChars(char data[],int offset,int length, int x, int y):在指定的位置顯示字符數(shù)組中的文字,從字符數(shù)組的offset位置開始,最多顯示length個(gè)字符。
(3)drawBytes(byte data[],int offset,int length,int x,int y), 在指定的位置顯示字符數(shù)組中的文字,從字符數(shù)組的offset位置開始,最多顯示length個(gè)字符。
這里給出的顯示位置(x,y)為文字的基線的開始坐標(biāo),不是文字顯示的矩形區(qū)域的左上角坐標(biāo)。
文字字型有三個(gè)要素:
字體:常用的字體有Times New Roman、Symbol、宋體、楷體等。
風(fēng)格:常用的風(fēng)格有三種:正常、粗體和斜體;分別用三個(gè)常量表示:Font.PLAIN(正常)、Font.BOLD(粗體)和Font.ITALIC(斜體)。風(fēng)格可以組合使用,例如 ,F(xiàn)ont.BOLD+Font.ITALIC。
字號(hào):字號(hào)是字的大小,單位是磅。
在Java語言中,用類Font對(duì)象字型。Font類構(gòu)造方法有:
Font(String fontName,int style,int size),3個(gè)參數(shù)分別表示字體、風(fēng)格和字號(hào)。例如,代碼:
Font fnA = new Font(“細(xì)明本”,Font.PLAIN,12)
設(shè)置的字型的是:細(xì)明體、正常風(fēng)格, 12磅字號(hào)。
Font類的其他常用方法:
- getStyle(),返回字體風(fēng)格。
- getSize(),返回字體大小。
- getName(),返回字體名稱。
- isPlain(),測(cè)試字體是否是正常字體。
- isBold(),測(cè)試字體是否是粗體。
- isItalic(),測(cè)試字體是否是斜體。
【例】小應(yīng)用程序用6種字型字符串,顯示內(nèi)容說明本身的字型。
import java.applet.*;
import java.awt.*;
public class Example7_1 extends Applet{
Font f1 = new Font("Helvetica",Font.PLAIN,18);
Font f2 = new Font("Helvetica", Font.BOLD,10);
Font f3 = new Font("Helvetica",Font.ITALIC,12);
Font f4 = new Font("Courier",Font.PLAIN,12);
Font f5 = new Font("TimesRoman", Font.BOLD+Font.ITALIC,14);
Font f6 = new Font("Dialog",Font.ITALIC,14);
public void paint(Graphics g){
setSize(250,200);
g.setFont(f1);drawString("18pt plain Helvetica",5,20);
g.setFont(f2);drawString("10pt bold Helvetica",5,43);
g.setFont(f3);drawString("12pt italic Helvetica",5,58);
g.setFont(f4);drawString("12pt plain courier",5,75);
g.setFont(f5);drawString("14pt bold & italic times Roman",5,92);
g.setFont(f6);drawString("14pt italic dialog",5,111);
}
}
用類Color的對(duì)象設(shè)置顏色,有兩種方法生成各種顏色:
用類Color預(yù)定議的顏色:black,red, white, yellow ……;
通過紅綠藍(lán)(RGB)的值合成顏色。
與顏色有關(guān)的常用方法:
(1)用類Color的構(gòu)造方法Color(int R, int G,int B)創(chuàng)建一個(gè)顏色對(duì)象,參數(shù)R,G,B分別表示紅色、綠色和藍(lán)色,它們的取值是從0到255。
(2)用類Graphics的方法setColor(Color c),參數(shù)c的取值參見表12-1。
(3)用類Component的方法setBackground(Color c)設(shè)置背景顏色。因?yàn)樾〕绦蚴墙M件類的子類,直接可用setBackground()方法改變背景色。
(4)用類Graphics的方法getColor()獲取顏色。
Color 類預(yù)定義顏色常量

【例】小應(yīng)用程序設(shè)置顏色并涂方塊,其中繪制方塊的方法將在后續(xù)小節(jié)中講到。
import java.applet.*;
import java.awt.*;
public class Example7_2 extends Applet{
public void paint(Graphics g){
setSize(380,200);
for(int i=0;i<=10;i++){
Color myredcolor = new Color(i*25+5,0,0);
g.setColor(myredcolor);
g.fillRect(i*32+5,2,28,28);
}
for(int i=0;i<=10;i++){
Color mygreencolor = new Color(0,i*25+5,0);
g.setColor(mygreencolor);
g.fillRect(i*32+5,32,28,28);
}
for(int i=0;i<=10;i++){
Color mybluecolor = new Color(0,0,i*25+5);
g.setColor(mybluecolor);
g.fillRect(i*32+5,62,28,28);
}
}
}
相關(guān)文章
關(guān)于SpringBoot中controller參數(shù)校驗(yàn)的使用
本文主要介紹了關(guān)于SpringBoot中controller參數(shù)校驗(yàn)的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
SpringBoot?整合RabbitMq?自定義消息監(jiān)聽容器來實(shí)現(xiàn)消息批量處理
Spring Boot中提供了默認(rèn)的監(jiān)聽器容器,但是有時(shí)候我們需要自定義監(jiān)聽器容器,來滿足一些特殊的需求,比如批量獲取數(shù)據(jù),這篇文章主要介紹了SpringBoot?整合RabbitMq?自定義消息監(jiān)聽容器來實(shí)現(xiàn)消息批量處理,需要的朋友可以參考下2023-04-04
Java之SSM中bean相關(guān)知識(shí)匯總案例講解
這篇文章主要介紹了Java之SSM中bean相關(guān)知識(shí)匯總案例講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
一文詳解如何在Java?Maven項(xiàng)目中使用JUnit?5進(jìn)行測(cè)試
這篇文章主要介紹了如何在Java?Maven項(xiàng)目中使用JUnit?5進(jìn)行測(cè)試的相關(guān)資料,JUnit5是一個(gè)流行的Java測(cè)試框架,它涵蓋了JUnit5的概述、環(huán)境配置、編寫測(cè)試用例、運(yùn)行測(cè)試、高級(jí)特性和最佳實(shí)踐,需要的朋友可以參考下2025-04-04
java常用工具類之?dāng)?shù)據(jù)庫連接類(可以連接多種數(shù)據(jù)庫)
這篇文章主要介紹了java常用工具類之?dāng)?shù)據(jù)庫連接類,可以連接多種數(shù)據(jù)庫,代碼中包含詳細(xì)注釋,需要的朋友可以參考下2014-07-07
Mybatis 自動(dòng)映射(使用需謹(jǐn)慎)
這篇文章主要介紹了Mybatis 自動(dòng)映射(使用需謹(jǐn)慎),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10

