如何使用mangal.ttf或任何其他字體渲染在libgdx印地文文本。 當試圖打印印地文文本時,方框即將到來。如何在Libgdx中渲染印地文文本?
0
A
回答
0
我們可以用 「Chanakya的」 字體來呈現正確的方式印地文文本。從赫拉下載chanyaka.ttf:
http://indiatyping.com/index.php/download/199-chanakya-font
安裝字體之後。你應該使用coverter編碼您的印地文的文字:
http://indiatyping.com/index.php/font-converter/unicode-to-chanakya-font-converter
一旦轉換的文本,只需將它複製到你的目的地,你應該是好去!
享受:)
0
嘗試FreeTypeFont,FreetypeFont在Maven存儲庫中可用,因此您可以通過gradle輕鬆地在項目中使用inject dependency並在您的代碼中使用。
public class MyGdxGame extends Game {
SpriteBatch spriteBatch;
BitmapFont font;
OrthographicCamera camera;
GlyphLayout glyphLayout,glyphLayout1;
String text,text1;
@Override
public void create() {
camera=new OrthographicCamera();
camera.setToOrtho(false,400,640);
spriteBatch = new SpriteBatch();
FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("Mangal.ttf"));
FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();
parameter.color = Color.WHITE;
parameter.magFilter = Texture.TextureFilter.Linear; // used for resizing quality
parameter.minFilter = Texture.TextureFilter.Linear;
//ँंंःअआइईउऊऋएऐऑओऔकखगघचछजझञटठडढणतथदधनपफबभमयरलवशषसह़ािीुूृॅेैॉोौ्
parameter.characters = "शुभ प्रभात आप का स्वागत है"; //The characters the font should contain
parameter.size=15;
font=generator.generateFont(parameter);
font.getRegion().getTexture().setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear);
font.setColor(1.0f, 0.0f, 0.0f, 1.0f);
generator.dispose();
text="शुभ प्रभात";
text1="आप का स्वागत है";
glyphLayout=new GlyphLayout(font,text);
glyphLayout1=new GlyphLayout(font,text1);
}
@Override
public void render() {
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
Gdx.gl.glClearColor(1,1,0,1);
spriteBatch.setProjectionMatrix(camera.combined);
spriteBatch.begin();
font.draw(spriteBatch,text,camera.viewportWidth*.5f-glyphLayout.width/2f,camera.viewportHeight*.5f);
font.draw(spriteBatch,text1,camera.viewportWidth*.5f-glyphLayout1.width/2f,camera.viewportHeight*.4f);
spriteBatch.end();
}
@Override
public void resize(int width, int height) {
camera.setToOrtho(false,width,height);
}
@Override
public void dispose() {
font.dispose();
spriteBatch.dispose();
}
}
輸出看起來是這樣的:
相關問題
- 1. 在LibGDX中渲染svg文件
- 2. 如何在libgdx中渲染.obj中的.mtl文件android
- 3. 如何在C(android)中渲染文本?
- 4. 在LWJGL中渲染文本
- 5. 在AS3中渲染文本
- 6. 在libgdx中渲染帶有BitmapFont的文本
- 7. 在Libgdx中渲染圖像
- 8. OutOfMemoryError在libgdx中渲染時
- 9. LibGDX CPU渲染
- 10. 如何在Chrome中本地渲染Emojis?
- 11. 渲染圖像文本陣營本地
- 12. 如何將ejs文件渲染到本地文件
- 13. Qt:QOpenGLWidget中的文本渲染
- 14. chrome中的文本渲染
- 15. 文本不渲染在DIV
- 16. Libgdx渲染方法
- 17. libgdx渲染惡意
- 18. LibGDX Box2D不渲染
- 19. Rails j渲染部分本地文件
- 20. libGDX渲染TextureRegion渲染得太多
- 21. Libgdx渲染3D遊戲的地板
- 22. 渲染2D塊狀地圖 - LibGDX
- 23. 如何渲染HTML體內HTML文本
- 24. 從文本文件中渲染UML圖
- 25. 如何在OpenGL中渲染3D文字?
- 26. 如何提高LibGDX 3D渲染性能?
- 27. libGDX渲染方法如何工作?
- 28. WPF - 在Viewport3D中渲染文本
- 29. 在svg組中渲染文本元素
- 30. 在rails中渲染純文本4
在運行你的代碼..在了這個線程異常「LWJGL申請」了java.lang.RuntimeException:「?」鍵與名稱已經在地圖 \t在com.badlogic.gdx.graphics.g2d.PixmapPacker.pack(PixmapPacker.java:162) \t在com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.generateData(FreeTypeFontGenerator.java: 404) \t在com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.generateFont(FreeTypeFontGenerator.java:153) \t在com.vector.science11.MyGdxGame.create(MyGdxGame.java:37) – arv
感謝您的回答,但你的輸入和輸出字符不完全相同。就像輸出中的輸出字是不同的。 – arv
甚至स्वागत不如在我的文字 – Aryan