2014-07-24 25 views
6

Aşağıdaki problemi libredx gösterme Cyrillic ile yapıyorum.Libril görüntülemekle birlikte libgdx

bu işler: burada bir örnek vermek

System.out.println("абцдеф"); 

ama hiçbir şey gösterir:

field = new TextField("абцдеф", style); 

Ve başarılı olamadı çalıştı.

try { 
    mmm = new String(t.getBytes(), "UTF-8"); 
} catch (UnsupportedEncodingException e) { 
    // Will it ever be thrown? 
} 
field = new TextField(mmm, style); 

Birisi bir çözümü varsa çok sevinirim, çok, çok minnettar olacaktır.

cevap

6

Eksik bazı ek bilgiler olabileceğini düşünüyorum. Aslong libgdx, her tür metni görüntülemek için Bitmap yazı tiplerini kullanıyor. (TextField bence scene2dui'nin bir parçasıdır) Varsayılan Bitmap-Generation/Default-libgdx-fontu sadece ASCII-code karakterleri içerebilir ve bazı ek, ancak herhangi bir kireç içermez.

Bu yüzden, BitmapFont'unuzda, bunları görüntüleyebilmek için, elle çizilmiş kirpi karakterleri sağlamanız gerekir. bunları tanımlarsanız da kiril karakterleri üretebilir bir Ttf-Varlık dışına BitmapFonts üretmek için nispeten yeni libgdx-uzantı: TrueType Fonts in libGDX

Sonra da oyun/app bunları kullanmak mümkün olacak aslong Ayrıca, TextField/scene2dui stiliniz için yeni oluşturulan yazı tipini de tanımlarsınız: Libgdx Scene2d - Set actor (TextField) padding?

Ayrıca libgdx-repo'daki bazı testler de vardır. Eğer bir yanlış anlaşılma sorunu varsa oraya bir göz atın: https://github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/badlogic/gdx/tests/extensions/InternationalFontsTest.java Umarım bu yardımcı olur! nezle

+0

Cevabınız için teşekkürler @TheWhiteLlama yardımcı oldu. Bana doğru çözümü vermeyin, ama bana iyi fikirler verdi. Sorun yazı tipindeydi. Şimdilik en azından bir çeşme üretilemedi. İşte bir örnek: 'FreeTypeFontGenerator generator = new FreeTypeFontGenerator (Gdx.files.internal (" font/ciril1.ttf ")); BitmapFont font15 = generator.generateFont (11); ' Bana hata veriyor: dizisindeki durum "lwjgl Uygulaması" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.NoSuchMethodError: com.badlogic.gdx .graphics.g2d.TextureAtlas.getRegions() Ljava/util/List; – Bigfoot

+0

'BitmapFont font = yeni BitmapFont (Gdx.files.internal (" font/font.fnt ")), Gdx.files.internal (" font/font.png "), false) ile başarım; font.scale (-0.5f); ' – Bigfoot