【问题标题】:How to increase font size如何增加字体大小
【发布时间】:2013-04-03 22:13:22
【问题描述】:

我有一个对我来说似乎很愚蠢的小问题,但我无法在互联网上找到解决方案。我有一个代码,其中使用 ttf 文件初始化字体,如下所示。

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

现在我使用图形组件在屏幕上绘制一个字符串。在绘制字符串之前,我使用以下行:

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

但是我的字体很小。当我使用 f.getSize() 方法时,它会打印 1。 我应该如何增加字体大小?

【问题讨论】:

标签: java fonts awt font-size


【解决方案1】:

您需要使用 derivedFont 方法从初始对象中提取第二个 Font 对象:

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)

【讨论】:

  • 您传递的是 int 而不是 float 并调用了完全不同的方法。
  • 很好,回答马虎的情况,会解决的。
  • @DenisTulskiy 很高兴看到你的评论!
【解决方案2】:

试试这个

Font font = new Font(Font.TRUETYPE_FONT, Font.BOLD, 30);
txt.setFont(font);

【讨论】:

    【解决方案3】:

    Font 类有几个 deriveFont 方法来创建具有不同参数的字体,特别是 font.deriveFont(12f) 将创建大小为 12 的字体。

    编辑:确保使用浮点数作为大小,因为有设置字体样式而不是大小的 derivedFont(int style)。

    【讨论】:

      猜你喜欢
      • 2017-10-07
      • 2014-09-22
      • 1970-01-01
      • 2012-11-07
      • 2018-07-16
      • 2015-02-01
      • 1970-01-01
      • 2014-12-15
      • 2015-12-05
      相关资源
      最近更新 更多