我在java中为我的项目添加了一个新字体。但是在渲染时,文本大小始终为1。该文本基本上只显示几行。我尝试了多种字体,他们都做到了。这是我的代码。
public static void intializeFonts(){
try{
File font = new File("C:/The Woods/Fonts/script.ttf");
Font scriptFontU = Font.createFont(Font.TRUETYPE_FONT, font);
Font scriptFont = scriptFontU.deriveFont(20);
script = new TrueTypeFont(scriptFont, false);
} catch(Exception e){
System.out.println("Error Loading Font");
}
}
如果这有帮助的话,这也是我用它来呈现它。
g.setFont(Fonts.script);
g.drawString("Weight: "+ItemContainer.getWeight()+"lbs", 30, 600);
任何帮助都会很棒。谢谢。
答案 0 :(得分:0)
当您致电scriptFontU.deriveFont(20)
时,您正在呼叫Font.deriveFont(int)
。在此函数中,第一个参数是表示样式的整数。相反,你想调用Font.deriveFont(float)
,它需要一个大小并保持样式不变。您可以通过调用scriptFontU.deriveFont(20.0)
或同等内容来执行此操作;或者将Font.deriveFont(int, float)
称为scriptFontU.deriveFont(Font.PLAIN, 20.0)
,以使其明确无误。