例如,要指定一种中等大小的字体,可以使用Font.SIZE_MEDIUM;用Font.STYLE_ITALIC来指定倾斜字形,等等。字形属性值可以用OR(|)操作符结合;另外一些属性值不能结合。例如:下面这种属性值指定了一种常规,带下划线的字体:
STYLE_PLAIN | STYLE_UNDERLINED
而,下面是非法的组合:
SIZE_SMALL | SIZE_MEDIUM
下面也是非法的:
FACE_SYSTEM | FACE_MONOSPACE
系统中的每种字体实际上都是分别实现的,所以为了取得描述字体的对象,可以用getFont( )方法--该方法有三个参数,分别对应字体的字面,大小和字形。如,下面的代码以指定的字面,大小和字形属性得到一个Font对象:
Font font = Font.getFont(FACE_SYSTEM,STYLE_PLAIN, SIZE_MEDIUM);
如果没有相匹配的字体,系统将尽可能提供最相近的匹配-总是一个有效的字体对象。
一旦得到一种字体,你就可以使用Font类的方法来检索这种字体的信息。如,你可以用getFace(),getSize( )和getStyle( )方法来分别检索该字体的字面,大小和字形信息。
让我们再看一个例子:示例3中代码子类化Canvas 类。在此,绘图颜色设置为白色,并用该色画出一个矩形,然后把绘图色置为黑色。代码剩下的部分在设备屏幕上绘制系统字体,如图2所示。

图2.在设备显示屏上画出系统字体
示例3:使用字体import javax.microedition.lcdui.*;
public class FontCanvas extends Canvas {
public void paint(Graphics g) {
g.setColor(0xffffff);
g.fillRect(0, 0, getWidth(), getHeight( ));
g.setColor(0x000000);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,Font.SIZE_LARGE));
g.drawString("System Font", 0, 0, g.LEFT | g.TOP);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
g.drawString("Medium Size", 0, 15, g.LEFT | g.TOP);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD,Font.SIZE_MEDIUM));
g.drawString("Bold Style", 0, 30, g.LEFT | g.TOP);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_ITALIC,Font.SIZE_MEDIUM));
g.drawString("Italic Style", 0, 45, g.LEFT | g.TOP);
g.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_UNDERLINED, Font.SIZE_MEDIUM));
g.drawString("Underlined Sty