第20回
では、Canvasに表示する文字の位置の調節についてです。
drawString(str , x, y) というメソッドで文字列描画を行います。
ここで、x は横方向の位置、yは縦方向の位置ですが、画面の左上が0です。
例えば、こんな書き方、
g.drawString("First Canvas",0,0);
としてみます。
左上から表示されると思いきや、残念ながら画面には表示されません。
この位置指定は文字列のベースライン(ほとんどの場合文字列の底)なのでその分下にずらさなければいけません。どのぐらいずらせばよいかは、Font クラスのgetHeight()というメソッドを呼び出します。ベースラインより上のサイズは getAscent() 、ベースラインより下のサイズは getDescent() です。
フォントのオブジェクトを取得
Font f = Font.getDefalutFont();
フォントの高さを取得
int fh = f.getHeight();
描画
int y = fh;
g.drawString("FirstCanvas",0,y);
その次の行に書くなら
y += fh;
g.drawString("次の行に描画",0 ,y );
次回は中央寄せの考え方についてです。