Fonts AndEngine GLES2 |使字体大小可调?
我现在知道安德林中所有基本的调整大小的东西,但我还没有找到一个好方法来调整文本大小。基本上每个人都在做的是,所有字体都被声明为位图,比如说18pt,并且希望是最好的。在开发设备上,所有东西看起来都很锋利,但是当切换到更大的设备上时,它看起来非常难看。我是否必须将所有字体加载到一个更大的图集中,然后向下调整大小?那不可能是一个选择。请帮助。您的问题是否具体?我不这么认为 字体大小不应与屏幕大小成比例,而应与密度成比例。也许两者都有。无论如何在FluxCards中,我这样做:Fonts AndEngine GLES2 |使字体大小可调?,fonts,opengl-es-2.0,textures,andengine,resizable,Fonts,Opengl Es 2.0,Textures,Andengine,Resizable,我现在知道安德林中所有基本的调整大小的东西,但我还没有找到一个好方法来调整文本大小。基本上每个人都在做的是,所有字体都被声明为位图,比如说18pt,并且希望是最好的。在开发设备上,所有东西看起来都很锋利,但是当切换到更大的设备上时,它看起来非常难看。我是否必须将所有字体加载到一个更大的图集中,然后向下调整大小?那不可能是一个选择。请帮助。您的问题是否具体?我不这么认为 字体大小不应与屏幕大小成比例,而应与密度成比例。也许两者都有。无论如何在FluxCards中,我这样做: // determin
// determine the density
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
Display display = windowManager.getDefaultDisplay();
DisplayMetrics displayMetrics = new DisplayMetrics();
display.getMetrics(displayMetrics);
density = displayMetrics.density;
// scale desired size 25 by density
int fontSize = (int) (25 * density);
Texture fontTexture = new BitmapTextureAtlas(1024, 1024, TextureOptions.BILINEAR_PREMULTIPLYALPHA);
font = new Font(fontTexture, Typeface.create(Typeface.DEFAULT, Typeface.NORMAL), fontSize, true, Color.WHITE);
mEngine.getTextureManager().loadTexture(fontTexture);
mEngine.getFontManager().loadFont(font);
(我的代码更复杂,我仍在挣扎,因为1024x1024是fontTexture可以使用的最大值,对于更大的字体和亚洲文本,字母有时不会被书写。我正在搜索如何在GLES2中使用文本,在遇到您的问题之前,我读了2分钟,这表明这不再是一个问题。)哦,谢谢。有一段时间没有检查我的stackoverflow帐户了。我一定会试试:)。谢谢