zoukankan      html  css  js  c++  java
  • Java知多少(96)绘图之设置字型和颜色

    Java绘图中,显示文字的方法主要有三种:
    (1)drawString(String str,int x,int y):在指定的位置显示字符串。
    (2)drawChars(char data[],int offset,int length, int x, int y):在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。
    (3)drawBytes(byte data[],int offset,int length,int x,int y), 在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。

    这里给出的显示位置(x,y)为文字的基线的开始坐标,不是文字显示的矩形区域的左上角坐标。

    文字字型有三个要素:
    • 字体:常用的字体有Times New Roman、Symbol、宋体、楷体等。
    • 风格:常用的风格有三种:正常、粗体和斜体;分别用三个常量表示:Font.PLAIN(正常)、Font.BOLD(粗体)和Font.ITALIC(斜体)。风格可以组合使用,例如 ,Font.BOLD+Font.ITALIC。
    • 字号:字号是字的大小,单位是磅。

    在Java语言中,用类Font对象字型。Font类构造方法有:
        Font(String fontName,int style,int size),3个参数分别表示字体、风格和字号。例如,代码:
        Font fnA = new Font(“细明本”,Font.PLAIN,12)
    设置的字型的是:细明体、正常风格, 12磅字号。

    Font类的其他常用方法:
    1. getStyle(),返回字体风格。
    2. getSize(),返回字体大小。
    3. getName(),返回字体名称。
    4. isPlain(),测试字体是否是正常字体。
    5. isBold(),测试字体是否是粗体。
    6. isItalic(),测试字体是否是斜体。

    【例 12-1】小应用程序用6种字型字符串,显示内容说明本身的字型。
     1 import java.applet.*;
     2 import java.awt.*;
     3 public class Example7_1 extends Applet{
     4     Font f1 = new Font("Helvetica",Font.PLAIN,18);
     5     Font f2 = new Font("Helvetica", Font.BOLD,10);
     6     Font f3 = new Font("Helvetica",Font.ITALIC,12);
     7     Font f4 = new Font("Courier",Font.PLAIN,12);
     8     Font f5 = new Font("TimesRoman", Font.BOLD+Font.ITALIC,14);
     9     Font f6 = new Font("Dialog",Font.ITALIC,14);
    10     public void paint(Graphics g){
    11         setSize(250,200);
    12         g.setFont(f1);drawString("18pt plain Helvetica",5,20);
    13         g.setFont(f2);drawString("10pt bold Helvetica",5,43);
    14         g.setFont(f3);drawString("12pt italic Helvetica",5,58);
    15         g.setFont(f4);drawString("12pt plain courier",5,75);
    16         g.setFont(f5);drawString("14pt bold & italic times Roman",5,92);
    17         g.setFont(f6);drawString("14pt italic dialog",5,111);
    18     }
    19 }

    用类Color的对象设置颜色,有两种方法生成各种颜色:
    • 用类Color预定议的颜色:black,red, white, yellow ……;
    • 通过红绿蓝(RGB)的值合成颜色。

    与颜色有关的常用方法:
    (1)用类Color的构造方法Color(int R, int G,int B)创建一个颜色对象,参数R,G,B分别表示红色、绿色和蓝色,它们的取值是从0到255。
    (2)用类Graphics的方法setColor(Color c),参数c的取值参见表12-1。
    (3)用类Component的方法setBackground(Color c)设置背景颜色。因为小程序是组件类的子类,直接可用setBackground()方法改变背景色。
    (4)用类Graphics的方法getColor()获取颜色。
    表12-1 Color 类预定义颜色常量
    black blue cyan
    darkGray gray green
    lightGray magenta orange
    pink red white
    yellow    

    【例 12-2】小应用程序设置颜色并涂方块,其中绘制方块的方法将在后续小节中讲到。
     1 import java.applet.*;
     2 import java.awt.*;
     3 public class Example7_2 extends Applet{
     4     public void paint(Graphics g){
     5         setSize(380,200);
     6         for(int i=0;i<=10;i++){
     7             Color myredcolor = new Color(i*25+5,0,0);
     8             g.setColor(myredcolor);
     9             g.fillRect(i*32+5,2,28,28);
    10         }
    11         for(int i=0;i<=10;i++){
    12             Color mygreencolor = new Color(0,i*25+5,0);
    13             g.setColor(mygreencolor);
    14             g.fillRect(i*32+5,32,28,28);
    15         }
    16         for(int i=0;i<=10;i++){
    17             Color mybluecolor = new Color(0,0,i*25+5);
    18             g.setColor(mybluecolor);
    19             g.fillRect(i*32+5,62,28,28);
    20         }
    21     }
    22 }

    系列文章:

    北风网
  • 相关阅读:
    了解JVM原理
    封装JS
    “==”和Equals的区别
    SpringMVC请求RequestMapping() 请求乱码
    博客25周
    博客24周
    博客23周
    博客22周
    博客第21周
    博客第21周
  • 原文地址:https://www.cnblogs.com/Coda/p/4586968.html
Copyright © 2011-2022 走看看