欢迎来到天天文库
浏览记录
ID:49397461
大小:76.85 KB
页数:2页
时间:2020-02-29
《libgdx学习记录9——FreeType,ttf中文显示.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、libgdx学习记录9——FreeType,ttf中文显示前面讲到使用Hireo创建的BitmapFont以显示中文字体。这种方式效率很高,当所要显示的字的总数较少,并且大小比较固定时,可以采用这种方式。但是这种也有弊端:(1)字体大小不能随意设置,当放大时就会变形。(2)当所要显示的字总数较多或者经常变化时,会很麻烦。libgdx对中文的支持不太好,也是很多人转向其他引擎的一个原因。幸好,其扩展模块中的FreeType能够通过ttf字体来实现随意中文显示。FreeType是libgdx的扩展模块,创建项目时需要添加对应的jar包和对应的动态运行库。
2、core工程lib中加入gdx-freetype.jar。desktop工程lib中加入gdx-freetype-natives.jar。android工程中lib加入gdx-freetype.jar,并将armeabi和armeabi-v7a中的libgx-freetype.so文件添加到对应的目录中。三个工程中分别将对应的jar包添加到RefrencedLibraries中。环境配置完成,具体事例如下:1packagecom.fxb.freetype;23importcom.badlogic.gdx.ApplicationListener;4im
3、portcom.badlogic.gdx.Gdx;5importcom.badlogic.gdx.graphics.Color;6importcom.badlogic.gdx.graphics.GL10;7importcom.badlogic.gdx.graphics.g2d.BitmapFont;8importcom.badlogic.gdx.graphics.g2d.SpriteBatch;910importcom.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;11importc
4、om.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeBitmapFontData;121314publicclassFreeTypeimplementsApplicationListener{1516BitmapFont[]font;17//FreeTypeBitmapFontDatafontData;18FreeTypeFontGeneratorgenerator;19SpriteBatchbatch;2021@Override22publicvoidcreate(
5、){23//TODOAuto-generatedmethodstub24batch=newSpriteBatch();25font=newBitmapFont[3];26Color[]colors={Color.RED,Color.BLUE,Color.GREEN};27for(inti=0;i<3;++i){28generator=newFreeTypeFontGenerator(Gdx.files.internal("data/"+(i+1)+".ttf"));29font[i]=generator.generateFont(25,FreeTyp
6、eFontGenerator.DEFAULT_CHARS+"今天是个好日子,大家心情都很",false);30font[i].setColor(colors[i]);31generator.dispose();32}3334//fontData=generator.generateData(25,FreeTypeFontGenerator.DEFAULT_CHARS+"今天是个好日子,大家心情都很",false);35}3637@Override38publicvoidresize(intwidth,intheight){39//TODOAuto-g
7、eneratedmethodstub4041}4243@Override44publicvoidrender(){45//TODOAuto-generatedmethodstub4647Gdx.gl.glClearColor(1,1,1,1);48Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);4950batch.begin();51for(inti=0;i<3;++i){52font[i].drawMultiLine(batch,"今天是个好日子,大家心情都很好VeryGood!20140521!!",12
8、0,100*(3-i));53}54batch.end();55}5657@Override58public
此文档下载收益归作者所有