2013-12-15 46 views
1

請幫我解決這個問題。在我的應用程序中,我使用了一種特殊字體來使應用程序更加優雅。 我做這些的代碼更改字體:更改字體後文字破碎

public static Typeface fontsStyle; 

public static void setTypeFace(TextView tv, AssetManager asm){ 

    if(fontsStyle == null) 
     fontsStyle = Typeface.createFromAsset(asm, "fonts/VNI 08 Springtime2.ttf"); 
    tv.setTypeface(fontsStyle, Typeface.BOLD); 
} 

而我的問題是,當我顯示Unicode字符(越南),打破了文字。

enter image description here

我試了很多字體,這一點任何時候,即使是那些字體支持Unicode的。 任何幫助將不勝感激。 謝謝。

+0

你是什麼意思破?就像它變成垃圾角色一樣? – LightYearsBehind

+0

請參閱圖片。它變成矩形 – gZerone

+0

嘗試確保字體包含要打印的字形。 – Snicolas

回答

0

Unicode的字形(告訴機器如何繪製符號的東西)沒有在使用的字體中定義。

沒有字形,Android不知道如何正確呈現它。在某些Android版本中,您會看到它像方框,而在其他版本中則只是一個空白區域。

系統字體在這種情況下總是比較安全。 要統一您的應用顯示,您可以使用自ICS以來爲Android設計的Roboto字體。