不同分辨率的字体Libgdx

时间:2014-09-29 08:35:45

标签: java android libgdx

我的字体有问题:

我有一个bitmapFont,我用它来写Label中的单词,我的问题是当改变屏幕的分辨率时,字体似乎是像素化的。

查看网络我发现使用FreeTypeFontGenerator类可以解决此问题,但我不明白如何。

你可以给我一个提示吗。

感谢您的时间

1 个答案:

答案 0 :(得分:1)

为了能够使用FreeTypeFontGenerator类,您必须将Gdx-FreeType Extension添加到项目中。如果您正在使用Gradle进行开发,请将以下dependenies添加到您的项目根gradle.build文件中:

核心依赖关系:

compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"

桌面相关性:

compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop"

Android依赖关系:

compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86"

iOS依赖关系:

compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"

HTML依赖关系:不兼容!

然后,在您的资源目录中添加您的字体ttf文件并使用它:

FreeTypeFontGenerator generator = new  FreeTypeFontGenerator(Gdx.files.internal("myfont.ttf"));
FreeTypeFontParameter parameter = new FreeTypeFontParameter();
parameter.size = 12;
BitmapFont font12 = generator.generateFont(parameter); // font size 12 pixels
generator.dispose(); // don't forget to dispose to avoid memory leaks!

更多信息:Gdx FreeType on Libgdx Wiki