概要
文字に長体をかけたフォントを生成し、これをJTextArea
などのコンポーネントで使用します。
スクリーンショット
広告
サンプルコード
Font font = new Font(Font.MONOSPACED, Font.PLAIN, 18).deriveFont(
AffineTransform.getScaleInstance(.9, 1d));
textArea.setFont(font);
view all解説
- 上:
JTextArea(condensed: 0.9)
- 水平比率
90%
の変形をかけた長体フォントを作成してJTextArea
に設定
- 水平比率
- 中:
GlyphVector(condensed: 0.9)
- 水平比率
90%
の変形をかけた長体フォントを作成し、そのFont
からFontMetrics
、GlyphVector
を生成して文字列を描画 - 一文字ごとに変形する場合は、
GlyphVector#setGlyphTransform(idx, affineTransform)
を使用する方法もある
- 水平比率
- 下:
LineBreakMeasurer(condensed: 0.9)
- 水平比率
90%
の変形をかけた長体フォントを作成してAttributedString#addAttribute(TextAttribute.FONT, font)
メソッドで属性付き文字列に設定 LineBreakMeasurer
、TextLayout
で属性付き文字列を描画
- 水平比率