【发布时间】:2015-09-22 01:52:55
【问题描述】:
我正在尝试使用自定义字体,但由于某种原因它不会呈现并且也不会引发异常。 我已经查看了解决方案将其添加到我所做的图形环境的其他类似问题。
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));
来自建议注册字体的同一个示例,我可以在那里看到我的字体。
【问题讨论】: