gpt4 book ai didi

Java 字体不呈现

转载 作者:行者123 更新时间:2023-12-01 11:21:07 26 4
gpt4 key购买 nike

我正在尝试使用自定义 fon,但由于某种原因它不会呈现,也不会引发任何异常。我已经研究过其他类似的问题,解决方案是将其添加到我所做的图形环境中。

public static Font font;

public static void main(String[] args) {


try{
font = Font.createFont(Font.TRUETYPE_FONT, new File("myFont.ttf"));
}
catch (Exception ex) {
System.out.println("ex");
}
GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
ge.registerFont(font);
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
Main ex = new Main();
ex.setVisible(true);

}
});
}

我稍后会使用这个字体,

public void draw(Graphics g, ImageObserver o){
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(bg, 0, 0, (int) Board.w, (int) Board.h, o);
New.draw(g2d,o);
Load.draw(g2d,o);
Quit.draw(g2d,o);
g2d.setFont(Main.font);
g2d.drawString("Test Text",0,0);
}

但是那里什么也没有。

编辑:我已添加

    JList fonts = new JList( ge.getAvailableFontFamilyNames() );
JOptionPane.showMessageDialog(null, new JScrollPane(fonts));

来自建议注册字体的同一示例,我可以在那里看到我的字体。

最佳答案

尝试:

try{
font = Font.createFont(Font.TRUETYPE_FONT, new File("myFont.ttf"));
font = font.deriveFont(30F);
}
catch (Exception ex) {
ex.printStackTrace();
}

其中“30F”是字体大小的浮点类型。

关于Java 字体不呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31220072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com