使用自定义字体

时间:2013-07-20 01:16:00

标签: java fonts awt

我正在尝试将JLabel的字体设置为自定义字体。读取文件时不会抛出异常,但是当我调用label.setText("string")时没有任何异常。当我注释掉label.setFont(f)行时会显示文字。谁知道我做错了什么?此代码位于JPanel类中。

    _mineLabel = new JLabel();

    _timeLabel = new JLabel();

    try {
        Font f = Font.createFont(Font.TRUETYPE_FONT,new File("/Users/simon/Documents/workspace/Minesweeper/bin/minesweeper/DS-DIGI.TTF"));
        GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
        ge.registerFont(f);
        f.deriveFont(12f);
        _mineLabel.setFont(f);
        _timeLabel.setFont(f);
    } catch(IOException e) {
        e.printStackTrace();
    } catch(FontFormatException e) {
        e.printStackTrace();
    }
    this.add(_mineLabel);
    this.add(_timeLabel);
    _timeLabel.setText("test");

1 个答案:

答案 0 :(得分:2)

更改此行

    f.deriveFont(12f);

 f=f.deriveFont(12f);