Unofficial
"CLDC 1.1
+ MIDP 2.0"
API Reference.
(日本語版)

javax.microedition.lcdui
クラス Font

java.lang.Object
  上位を拡張 javax.microedition.lcdui.Font

public final class Font
extends Object

Font クラスはフォントおよびフォント・メトリクスを表します。 アプリケーションは直接 Font オブジェクトを生成することはできません。 代わりに、アプリケーションはフォント属性に基づいた情報を渡して Font オブジェクトを得ます。 実装はアプリケーションが指定したフォントにできる限り一致するフォントを提供するように試みます。

フォントを指定するための属性は、スタイル、サイズ、フェースの3要素です。 属性に対する値は定数にて定義されています。 スタイル属性に関する値は論理和(or)を使用して組み合わせて指定します。 しかし、他の属性に対する値は組み合わせることができないものもあります。 例えば、

     STYLE_BOLD | STYLE_ITALIC

は、スタイルにボールドとイタリックを組み合わせたフォントを指定するために用いられます。 しかし、

     SIZE_LARGE | SIZE_SMALL

は、不正です(大きくて小さいフォントはありえません)。

各属性には 0 を指定することができ、実装が定めるデフォルト・フォントを指定するために使用することができるように、定数は規定されています。 プログラムを記述する上で見通しをよくするために以下の定数に 0 が定義されています。

これらの値が不要に誤用されないために、他の属性のための値はエラーを検出するためにばらばらのビットパターンを持つように規定されています。 しかし、個々の属性のための値は、お互いに組み合わせて使用されることを意図していません。

導入されたバージョン:
MIDP 1.0

フィールドの概要
static int FACE_MONOSPACE
          モノスペース(等幅)フェイスのフォントを示す定数(=32)です。
static int FACE_PROPORTIONAL
          プロポーショナル(適幅)フェイスのフォントを示す定数(=64)です。
static int FACE_SYSTEM
          システムフェイスのフォントを示す定数(=0)です。
static int FONT_INPUT_TEXT
          ユーザーが入力したテキストを描画する際に実装が使用するフォントを示す定数(=1)です。
static int FONT_STATIC_TEXT
          Item および Screen の内容を描画する際に使用するデフォルト・フォントを示す定数(=0)です。
static int SIZE_LARGE
          システム依存の大きなフォントを示す定数(=16)です。
static int SIZE_MEDIUM
          システム依存の普通サイズのフォントを示す定数(=0)です。
static int SIZE_SMALL
          システム依存の小さなフォントを示す定数(=8)です。
static int STYLE_BOLD
          ボールドスタイルを示す定数(=1)です。
static int STYLE_ITALIC
          イタリックスタイルを示す定数(=2)です。
static int STYLE_PLAIN
          プレーンスタイルを表す定数(=0)です。
static int STYLE_UNDERLINED
          アンダーラインスタイルを示す定数(=4)です。
 
メソッドの概要
 int charsWidth(char[] ch, int offset, int length)
          指定されたオフセットから指定された文字数分の幅をピクセル数で返します。
 int charWidth(char ch)
          このフォントにおける指定文字の幅をピクセル数で返します。
 int getBaselinePosition()
          テキストの頂点から基線(ベースライン)までのピクセル数を返します。
static Font getDefaultFont()
          システムのデフォルトのフォントを返します。
 int getFace()
          このフォントに設定されているフェイスを返します。
static Font getFont(int fontSpecifier)
          fontSpecifier で渡された高レベル・ユーザーインタフェースで使用するフォントを返します。
static Font getFont(int face, int style, int size)
          指定されたフェース、スタイルおよびサイズのフォントをあらわすオブジェクトを返します。
 int getHeight()
          このフォントのテキスト行の標準の高さ(ピクセル数)を返します。
 int getSize()
          このフォントに設定されているサイズを返します。
 int getStyle()
          このフォントに設定されているスタイルを返します。
 boolean isBold()
          このフォントのスタイルが STYLE_BOLD であるか判定します。
 boolean isItalic()
          このフォントのスタイルが STYLE_ITALIC であるか判定します。
 boolean isPlain()
          このフォントのスタイルが STYLE_PLAIN であるか判定します。
 boolean isUnderlined()
          このフォントのスタイルが STYLE_UNDERLINED であるか判定します。
 int stringWidth(String str)
          このフォントにおける指定された文字列の幅をピクセル数で返します。
 int substringWidth(String str, int offset, int len)
          指定されたオフセットから指定された文字数分の幅をピクセル数で返します。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

STYLE_PLAIN

public static final int STYLE_PLAIN

プレーンスタイルを表す定数(=0)です。 このスタイルは他のスタイルと組み合わせて使用することができます。

関連項目:
定数フィールド値

STYLE_BOLD

public static final int STYLE_BOLD

ボールドスタイルを示す定数(=1)です。 このスタイルは他のスタイルと組み合わせて使用することができます。

関連項目:
定数フィールド値

STYLE_ITALIC

public static final int STYLE_ITALIC

イタリックスタイルを示す定数(=2)です。 このスタイルは他のスタイルと組み合わせて使用することができます。

関連項目:
定数フィールド値

STYLE_UNDERLINED

public static final int STYLE_UNDERLINED

アンダーラインスタイルを示す定数(=4)です。 このスタイルは他のスタイルと組み合わせて使用することができます。

関連項目:
定数フィールド値

SIZE_SMALL

public static final int SIZE_SMALL

システム依存の小さなフォントを示す定数(=8)です。

関連項目:
定数フィールド値

SIZE_MEDIUM

public static final int SIZE_MEDIUM

システム依存の普通サイズのフォントを示す定数(=0)です。

関連項目:
定数フィールド値

SIZE_LARGE

public static final int SIZE_LARGE

システム依存の大きなフォントを示す定数(=16)です。

関連項目:
定数フィールド値

FACE_SYSTEM

public static final int FACE_SYSTEM

システムフェイスのフォントを示す定数(=0)です。

関連項目:
定数フィールド値

FACE_MONOSPACE

public static final int FACE_MONOSPACE

モノスペース(等幅)フェイスのフォントを示す定数(=32)です。

関連項目:
定数フィールド値

FACE_PROPORTIONAL

public static final int FACE_PROPORTIONAL

プロポーショナル(適幅)フェイスのフォントを示す定数(=64)です。

関連項目:
定数フィールド値

FONT_STATIC_TEXT

public static final int FONT_STATIC_TEXT

Item および Screen の内容を描画する際に使用するデフォルト・フォントを示す定数(=0)です。

導入されたバージョン:
MIDP 2.0
関連項目:
定数フィールド値

FONT_INPUT_TEXT

public static final int FONT_INPUT_TEXT

ユーザーが入力したテキストを描画する際に実装が使用するフォントを示す定数(=1)です。

導入されたバージョン:
MIDP 2.0
関連項目:
定数フィールド値
メソッドの詳細

getFont

public static Font getFont(int fontSpecifier)

fontSpecifier で渡された高レベル・ユーザーインタフェースで使用するフォントを返します。 このフォントは CustomItem および Canvas のサブクラスで使用し、デバイスに実装されるユーザーインタフェースにあわせるために使用します。

パラメータ:
fontSpecifier - FONT_INPUT_TEXT または FONT_STATIC_TEXT のいずれかを渡します。
戻り値:
指定されたフォントに対応するフォントを返します。
例外:
IllegalArgumentException - fontSpecifier の値が不正な場合に throw します。
導入されたバージョン:
MIDP 2.0

getDefaultFont

public static Font getDefaultFont()

システムのデフォルトのフォントを返します。

戻り値:
システムに定義されたデフォルトのフォントを返します。

getFont

public static Font getFont(int face,
                           int style,
                           int size)

指定されたフェース、スタイルおよびサイズのフォントをあらわすオブジェクトを返します。 一致するフォントがデバイスに存在しない場合、システムは最も近いと判断するフォントを提供します。 近いといえるフォントが存在しない場合でも常に有効なフォント・オブジェクトを返します。

フェースは FACE_SYSTEMFACE_MONOSPACEFACE_PROPORTIONAL のいずれかで指定します。

スタイルは STYLE_PLAIN あるいは STYLE_BOLDSTYLE_ITALICSTYLE_UNDERLINED を組み合わせて指定します。

サイズは SIZE_SMALLSIZE_MEDIUMSIZE_LARGE のいずれかで指定します。

パラメータ:
face - フェイスを渡します。
style - スタイルを渡します。
size - サイズを渡します。
戻り値:
指定されたフォント属性に最も近いフォント・オブジェクトを返します。
例外:
IllegalArgumentException - 指定されたフォント属性に不正な値があった場合に throw します。

getStyle

public int getStyle()

このフォントに設定されているスタイルを返します。 STYLE_PLAIN あるいは STYLE_BOLDSTYLE_ITALICSTYLE_UNDERLINED を組み合わせた値を返します。

戻り値:
設定されているフォントのスタイルを返します。
関連項目:
isPlain(), isBold(), isItalic()

getSize

public int getSize()

このフォントに設定されているサイズを返します。 サイズは SIZE_SMALLSIZE_MEDIUMSIZE_LARGE のいずれかの値を返します。

戻り値:
フォントのサイズを返します。

getFace

public int getFace()

このフォントに設定されているフェイスを返します。 フェースは FACE_SYSTEMFACE_MONOSPACEFACE_PROPORTIONAL のいずれかの値を返します。

戻り値:
設定されているフォントのフェイスを返します。

isPlain

public boolean isPlain()

このフォントのスタイルが STYLE_PLAIN であるか判定します。

戻り値:
フォントのスタイルが STYLE_PLAIN の場合 true を、そうでなければ false を返します。
関連項目:
getStyle()

isBold

public boolean isBold()

このフォントのスタイルが STYLE_BOLD であるか判定します。

戻り値:
フォントのスタイルが STYLE_BOLD の場合 true を、そうでなければ false を返します。
関連項目:
getStyle()

isItalic

public boolean isItalic()

このフォントのスタイルが STYLE_ITALIC であるか判定します。

戻り値:
フォントのスタイルが STYLE_ITALIC の場合 true を、そうでなければ false を返します。
関連項目:
getStyle()

isUnderlined

public boolean isUnderlined()

このフォントのスタイルが STYLE_UNDERLINED であるか判定します。

戻り値:
フォントのスタイルが STYLE_UNDERLINED の場合 true を、そうでなければ false を返します。
関連項目:
getStyle()

getHeight

public int getHeight()

このフォントのテキスト行の標準の高さ(ピクセル数)を返します。 この値にはテキスト行のアンカー・ポイントからアンカー・ポイントへ描画する際に必要となる十分な間隔を含みます。 フォント・デザイナーおよびデバイスによって意図された様に一定間隔で配置されます。 この余分なスペース(リード)がテキストの下に生じます。

戻り値:
このフォントのテキスト行の標準の高さを返します。この値は必ず正数です。

getBaselinePosition

public int getBaselinePosition()

テキストの頂点から基線(ベースライン)までのピクセル数を返します。

戻り値:
テキストの頂点から基線(ベースライン)までのピクセル数を返します。

charWidth

public int charWidth(char ch)

このフォントにおける指定文字の幅をピクセル数で返します。 幅は現在の位置から次の文字を描画するために次の描画位置へ移動すべきピクセル数です。 このピクセル数には必要に応じて文字と文字の間隔を含みます。

パラメータ:
ch - 幅を取得する対象の文字を渡します。
戻り値:
このフォントにおける指定された文字の幅を返します。この値は必ず正数です。

charsWidth

public int charsWidth(char[] ch,
                      int offset,
                      int length)

指定されたオフセットから指定された文字数分の幅をピクセル数で返します。 この幅は指定された部分の文字を描画後に次に描画を開始すべき位置への移動ピクセル数です。 このピクセル数には必要に応じて文字と文字の間隔を含みます。

オフセットと文字数は文字配列内の有効な位置を示している必要があります。 以下の場合には ArrayIndexOutOfBoundsException を throw します。

パラメータ:
ch - 対象とする文字配列を渡します。
offset - 文字配列中の開始位置(オフセット)を渡します。
length - 対象とする文字数を渡します。
戻り値:
指定された部分の合計幅をピクセル数で返します。
例外:
ArrayIndexOutOfBoundsException - 文字配列中の位置指定が不適切な場合に throw します。
NullPointerException - chnull の場合に throw します。

stringWidth

public int stringWidth(String str)

このフォントにおける指定された文字列の幅をピクセル数で返します。 この幅は指定された文字列を描画後に次に描画を開始すべき位置への移動ピクセル数です。 このピクセル数には必要に応じて文字と文字の間隔を含みます。

パラメータ:
str - 対象とする文字列を渡します。
戻り値:
文字列全体の幅をピクセル数で返します。
例外:
NullPointerException - strnull を渡した場合に throw します。

substringWidth

public int substringWidth(String str,
                          int offset,
                          int len)

指定されたオフセットから指定された文字数分の幅をピクセル数で返します。 この幅は指定された部分の文字列を描画後に次に描画を開始すべき位置への移動ピクセル数です。 このピクセル数には必要に応じて文字と文字の間隔を含みます。

オフセットと文字数は文字列中の有効な位置を示している必要があります。 以下の場合には StringIndexOutOfBoundsException を throw します。

パラメータ:
str - 対象とする文字列を渡します。
offset - 文字列中の開始位置(オフセット)を渡します。
len - 対象とする文字数を渡します。
戻り値:
指定された部分の合計幅をピクセル数で返します。
例外:
StringIndexOutOfBoundsException - 文字列中の位置指定が不適切な場合に throw します。
NullPointerException - strnull の場合に throw します。

Unofficial
"CLDC 1.1
+ MIDP 2.0"
API Reference.
(日本語版)

公式仕様書原文の著作権表記等(※):

Mobile Information Device Profile Specification ("Specification")
Version: 2.0
Status: FCS
Release: November 5, 2002

Copyright 2002 Sun Microsystems, Inc. and Motorola, Inc.
All rights reserved.
※ただしこの API リファレンスは英語仕様を一語一句正確に翻訳したものではなく、一度私が英語の仕様原文を読んだ上で元の意味と構造をなるべく保つように書き起こしたものです。このため一部は完全に異なる説明となっています。また CLDC 1.1 部分は同仕様の範囲外であるため、まったく参考とはしていません。

※仕様書のライセンス上、問題は無いと考えておりますが、万が一問題があるとお考えの関係者の方がいらっしゃいましたらメールにて連絡をいただけると幸いに存じます(第一言語に日本語、第二言語に英語を希望しますが、返信は基本的に日本語で行います)。

この API リファレンスは仕様書の日本語版という位置づけでは作成していませんし、仕様書ほど厳格でもありません。MUST、SHOULD、MAY などの仕様の条件を強調する文を維持していません(反映すらしていない個所もあります)。仮想マシンおよび MIDP の実装のために使用することは避けてください。そのような用途には必ず公式仕様書原文そのものを用いるべきです。
この API リファレンスに記載されている内容は"さかきけい"が Sun Microsystems, Inc や Motorola, Inc、Java Community Process が公開している各種公式資料を元に、独自に調査・編集したものであり、Sun Microsystems, Inc や Motorola, Inc、Java Community Process 等とは一切関係ありません。したがってこの API リファレンスに関する問い合わせを関係各社等に対して行うことを固く禁じます。
また、記載された内容には既知か否かに関らず誤りが含まれる可能性があり、一切保証はありません。本 API リファレンスを使用した結果、不利益が生じたとしても"さかきけい"は一切の責任を負いません。
許可無く公開/非公開および Internet/Intranet/LAN を問わず他サイトに転載すること、複写および複製すること、ローカル・ファイル等に保存することを禁じます。


Copyright© 2001-2002,2005-2009,2011 by KEI SAKAKI.
ALL RIGHTS RESERVED.
無断転載を禁じます。

Unofficial "CLDC 1.0 + MIDP 1.0" API Reference はこちらです。