如何轻松地从文件中指定未安装的字体和字体大小?

时间:2018-10-16 16:00:56

标签: java fonts jlabel font-size

因此,我有一个字体文件和所有其他对象(例如图像和文件)一起放入,之所以这样做是因为我需要该字体才能在可能未安装该字体的计算机上工作。所以我用这个:

try {
    // Create the font 
    Font customFont = Font.createFont(Font.TRUETYPE_FONT, new File("src/Muli.ttf")).deriveFont(12f);
    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    // Register the font
    ge.registerFont(Font.createFont(Font.TRUETYPE_FONT, new File("src/Muli.ttf")));
} catch (IOException e) {
    e.printStackTrace();
} catch(FontFormatException e) {
    e.printStackTrace();
}

那为我注册了customFont,现在我很高兴。但是,在此之前,我将像这样声明JLabel的字体:setFont(new Font("Muli", FONT.PLAIN, 18))。但是,现在我只能这样做:setFont(customFont)

但问题是,我不知道如何更改customFont的大小。据我所知,.deriveFont(12f);指定了大小,但是我是否真的需要在每次应用字体但更改大小时都重新createFont

还有,setFont(new Font("src/Muli.ttf", FONT.PLAIN, 18));可以代替吗?

0 个答案:

没有答案