使用slick2d和TTF绘制字符串

时间:2013-04-14 10:01:09

标签: string lwjgl slick2d

我一直在尝试使用slickutils在LWJGL中进行字符串打印。通常在浏览网页时我发现了两种方法。首先是位图,其中您有一个完整的字母表并将每个字母打印为纹理,另一个是使用TrueTypeFonttruetypefont.drawString(20f,20f,"LWJGL String Test", Color.green)方法。 但是,我发现的大多数文献都是几年前的。目前这样做的正确方法是什么?

目前我正在使用TrueTypeFont方法,但是我的结果让我感到困惑。 enter image description here

//It doesn't matter which Font I try to load, I get the same green bar. 
//I think it has something to do with not finding the Fonts?
Font awtFont = new Font("Times New Roman", Font.BOLD, 24); 
TrueTypeFont font = new TrueTypeFont(awtFont, true);
font.drawString(20f, 20f, "LWJGL TEST STRING",Color.green);

我还从互联网上复制了一个例子并得到了相同的结果(只是一个小节)。 尝试谷歌搜索,但找不到任何修复。

1 个答案:

答案 0 :(得分:0)

不推荐使用TrueTypeFont。请改用UnicodeFont。

检查一下:

// Create a font with the size of 20, and not bold or italic.
Unicode font = new UnicodeFont("res/font.ttf", 20, false, false);

font.addAsciiGlyphs();
font.getEffects().add(new ColorEffect());
font.loadGlyphs();

g.setFont(font);
g.drawString("Shit example", 100, 100);