JTextPaneにログ出力してたけど、よく見たらフォント幅がまちまち。
やはりログのようなものは等幅フォントにしたい。
という訳で、Fontクラスについて調査。
「serif」とかいう名前は、昔見た覚えはあったけど深くはつっこんでなかったが、フォント業界(?)では一般的な名前らしい。
「sans-serif」はフランス語なので「サンス」ではなくて「サン」と読むらしい。ふーん。
JEditorPane(HTMLモード)ではsetFont()しても効かなかった覚えがあったが、JEditorPane以外のJTextComponent関連クラスは、setFont()すれば素直にそれが反映されるようだ。
JEditorPaneでも、JDK1.5からはフォントが反映されるようにする方法が出来ていたらしい。やっぱそういう要望があったんだろうな^^;
ついでにJTextComponent派生クラスについてもちょっとまとめてみた。
JTextFieldは改行無しなので使用用途は分かり易い。
JEditorPaneとJTextPaneとJTextAreaの違いがどうにも分かり難かったんだけど、メソッドを並べてみてようやく分かった。
複数行(装飾なし)ならJTextAreaの方が便利なメソッドが揃っている。
装飾したいならJTextPane、HTMLで使いたいならJEditorPaneといったところか。