0

ばかげているように思える小さな問題がありますが、インターネットで解決策を見つけることができません。次のように、ttf ファイルを使用してフォントを初期化するコードがあります。

  InputStream is = new BufferedInputStream(new FileInputStream(
            "dundalkh.ttf"));
  Font f = Font.createFont(Font.TRUETYPE_FONT, is);

ここで、Graphics コンポーネントを使用して、画面に文字列を描画します。文字列を描画する前に、次の行を使用します。

 g.setFont(f);
 g.drawString("Title",300,30);

ただし、私のフォントのサイズは非常に小さいです。f.getSize() メソッドを使用すると、1 が出力されます。フォント サイズを大きくするにはどうすればよいですか?

4

3 に答える 3

4

派生フォント メソッドを使用して、最初のフォントから 2 番目のフォント オブジェクトを取得する必要があります。

Font f = Font.createFont(Font.TRUETYPE_FONT, is);
Font newFont = f.deriveFont(10f);

これがそのドキュメントエントリです。

http://docs.oracle.com/javase/6/docs/api/java/awt/Font.html#deriveFont(float)

于 2013-04-11T16:03:18.327 に答える
2

Font クラスにはderiveFont、さまざまなパラメーターでフォントを作成するメソッドがいくつかあります。特にfont.deriveFont(12f)はサイズ 12 のフォントを作成します。

編集:サイズではなくフォントスタイルを設定するderiveFont(int style)があるため、サイズには必ず浮動小数点数を使用してください。

于 2013-04-11T16:07:47.787 に答える