在J2ME手机编程中使用字体

在J2ME手机编程中,可以通过使用字体类——Font在低级用户界面中,获得更好的表现效果,那么如何使用Font类呢? 

首先,由于手机设备的限制,手机中支持的字体类型很有限,所以在J2ME中只能使用手机支持的默认字体来构造Font类对象。下面是创建Font类的对象时使用的方法:

getFont(int face,int style,int size);

例如:

Font font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font. SIZE_MEDIUM);    

无论哪一个参数,都只能使用系统设置的数值,这些数值具体的大小在不同的手机上可能不同。
下面对于其中的三个参数的取值做详细的介绍:   

face参数指字体的外观,其的取值:

  1. FACE_MONOSPACE——等宽字体
  2. FACE_PROPORTIONAL——均衡字体
  3. FACE_SYSTEM——系统字体

style参数指字体的样式,其的取值:

  1. STYLE_BOLD——粗体
  2. STYLE_ITALIC——斜体
  3. STYLE_PLAIN——普通
  4. STYLE_UNDERLINED——下划线
  5. STYLE_BOLD | STYLE_ITALIC——粗斜体
  6. STYLE_UNDERLINED | STYLE_BOLD——带下划线粗体
  7. STYLE_UNDERLINED | STYLE_ITALIC——带下划线斜体
  8. STYLE_UNDERLINED | STYLE_ITALIC | STYLE_BOLD——带下划线的粗斜体

size参数指字体的大小,其的取值:

  1. SIZE_SMALL——小
  2. SIZE_MEDIUM——中
  3. SIZE_LARGE——大

通过上面的参数的值,可以组合出你需要的字体对象。
下面是一些常用的字体操作:

获得系统的默认字体:Font font = Font.getDefaultFont();

  1. 在panit方法内部,假设Graphics参数的名称为g,则获得当前字体的方法是: Font font = g.getFont();
  2. 在panit方法内部,假设Graphics参数的名称为g,则设置当前字体的方法是:g.setFont(font);其中font为你构造好的字体对象。
  3. 在MIDP2.0中,List可以设置每行的字体格式,方法是:list.setFont(0,font);则上面的代码是将list中的第一行设置为font类型的字体。

最后介绍一下在Nokia系列的手机中,字体大小的具体参数:    

平台                   默认字体大小(像素) 
S40                            12 
S60                             16 
S80                             21 
Nokia7710                   23