last modified: Jan./29th/2002
描画は paint()
メソッドの内で、引数で受け取った Graphics
オブジェクトを用いて実装します。ブラウザによってインスタンス化されたときに適切なオブジェクトが引数を通して受け渡されます。
この Graphics
オブジェクトに適当な Font
クラス型オブジェクトや Color
クラス型オブジェクトをセットすることで、フォントや色を指定して描画することが出来ます。
最初はフォントを指定してみます。
最初に Font
型オブジェクトでフォントファミリー、スタイル、大きさを指定したフォントを作成します。
java.lang.Object | +--java.awt.Font
クラス java.awt.Font
を import
するのを忘れないようにしましょう。
Font(Map attributes)
Font(String name, int style, int size)
プラットフォームごとにインストールされているフォントは違います。同じプラットフォームでも、各マシンごとにかなりバラバラです。そこで、共通して利用できるフォント名が論理的に決められています。プラットフォームごとに、にかよったフォントが関連付けられます。
Default
Dialog
DialogInput
Monospaced
Serif
SansSerif
Symbol
初期値は Default
です。フォント名は文字列として引数に記述します。
指定したフォントをイタリック体、太字、太字イタリック体に指定することが出来ます。
PLAIN
ITALIC
BOLD
初期値は PLAIN
です。これらは Font
クラスの静的メンバ変数(クラス変数)として定義された整数列ビットマスクです。イタリックかつ太字ならば、 Font.ITALIC | Font.BOLD
と指定します。
Font fnt = new Font("SansSerif", Font.ITALIC|Font.BOLD, 30);
上のサンプルでは、フォントが SsnaSerif
、スタイルがイタリック且つ太字、大きさが30ポイントのフォントを、変数名 fnt
で参照しています。
このようにして作成した Font
オブジェクトを、 Graphics
クラスの setFont()
メソッドで選択することで、このフォントを用いて描画されます。
次の例では、 Graphics
クラスの setFont()
メソッドで描画フォントを指定しています。このメソッドの引数は、 Font
クラス型のオブジェクトです。
import java.applet.Applet; import java.awt.Graphics; import java.awt.Font; public class FontTest extends Applet{ public void paint(Graphics gs){ Font fnt1 = new Font("Serif", Font.BOLD, 30); gs.setFont(fnt1); gs.drawString("Hello world!", 15,40); Font fnt2 = new Font("Serif", Font.BOLD|Font.ITALIC, 30); gs.setFont(fnt2); gs.drawString("Bye world!", 15,80); } }
<p><applet code="FontTest.class" width="200" height="100"> アプレットが実行できない場合の代替内容。 </applet></p>
アプレット:FontTest.class |
ここでは java.awt.Font
を明示的に import
しましたが、 java.awt.Color
, java.awt.Graphics
と同時に import java.awt.*;
とする方が普通です。ここでは、 Font
クラスを利用していることを明示する為に、あえて個別に記述しました。