テキストを描画

広告

まずアプレット上にテキストを描画する方法を見ていきます。GraphicsクラスのdrawStringメソッドを使います。

このグラフィックスコンテキストの現在のフォントと色を使い、指定された
文字列によって指定されたテキストを描きます。左端の文字のベースライン
は、このグラフィックスコンテキストの座標系の位置 (x, y) にあります。

パラメータ:
  str - 描画される文字列
  x - x 座標
  y - y 座標

指定した文字を指定した位置に描画します。テキストと言っても画像として書き込むことになるので、描画した後で文字を選択したりといったことは行えません。

指定する座標は、一番左の文字のベースラインの位置となります。ベースラインというのは文字の下に接する線(正確にはjやgなど下にはみ出している文字ではなくaやnなどの文字の下に接する線です)。文字の左上の位置ではないので注意して下さい。

使い方は下記のようになります。

public void paint(Graphics g){
  g.drawString("Hello", 10, 50);
}

サンプルプログラム

では実際に試してみます。

GraphicsTest1.java

import java.applet.Applet;
import java.awt.Graphics;

/*
<applet code="GraphicsTest1.class" width="150" height="150">
</applet>
*/

public class GraphicsTest1 extends Applet{
  public void paint(Graphics g){
    g.drawString("abcdefghijklmn", 10, 50);

    g.drawLine(5, 50, 100, 50);
  }
}

実際にブラウザで見てみた結果は下記の通りです。

テキストの描画

今回は指定した座標が文字のどの位置にあたるのか分かりやすいように、同じ座標を通る水平の直線を同時に描いています。

実際に下記で確認頂けます。

GraphicsTest1.html

( Written by Tatsuo Ikura )