ひっきぃのメモ帳

趣味で作るプラモデル製作の過程と作品、日々の資格取得へ向けての活動、Apple中心のIT関連ネタを書いています。

[]第21回 文字列の中央寄せ

 第21回では、文字列の中央寄せです。

文字列を中央に表示したい場面は結構あります。画像を中央に表示する方法も同じ考え方なので色々と応用できます。

中央寄せは基本的なアルゴリズムがありますのでそれを適用します。
考え方は、図に示したように?の座標を求められると良いことになります。

画面の幅 width 、文字列の幅がsw とすれば、
画面の半分から、文字列の半分だけ戻ったところが?の座標ですね。

式であらわすと

 width/2 - sw/2

となります。文字列の位置

 

 

 

 

 

 

文字列の幅さえわかればよいですが、文字の内容によって幅が変わる可能性があるので、文字列を指定してから幅を求めます。画面の幅は Display.getWidth()で取得することができます。

  String str = "abcdefg";  
  int sw = f.stringWidth(str);
  int sx = Display.getWidth()/2 - sw/2;

sx に?の座標が得られるので、ここに表示すると中央に表示することができます。

次回は、長い文字列の表示についてです。