2013-05-04 30 views
1

下面是我的代码,我正确使用字体来更改旁遮普语的字体,但它仍然在Galaxy S2上显示不正确的文本,并且在三星以外的手机上显示标点符号。不知道如何解决这个问题旁遮普语文字在Android中没有正确显示

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Typeface tf = Typeface.createFromAsset(getAssets(), 
      "fonts/ANMOL_L.TTF"); 
    TextView txt = (TextView) findViewById(R.id.text); 
    txt.setTextSize(40); 
    txt.setTypeface(tf); 
    txt.setText("ੴ ਸਤਿ ਨਾਮੁ ਕਰਤਾ ਪੁਰਖੁ ਨਿਰਭਉ ਨਿਰਵੈਰੁ ਅਕਾਲ ਮੂਰਤਿ ਅਜੂਨੀ ਸੈਭੰ ਗੁਰ ਪ੍ਰਸਾਦਿ ॥"); 
    } 
} 
+0

最后有什么用。 – Prateek 2013-05-10 07:23:38

+0

它对我的工作非常好。 – 2014-08-06 16:30:03

回答

0

尝试txt.setText(“Testing”);你会发现你会看到旁遮普的文字。这是因为您选择的字体不是Unicode兼容字体。它覆盖ASCII码。选择另一个字体文件。

我已经测试了来自http://www.gurbanifiles.org/unicode/的AnmolUni.ttf和AmbarSlim.ttf文件,它们工作。

+0

从我可以看到的“ANMOL_L.ttf”与旁遮普语一起工作:http://www.fontsitescript.com/demo/fonts.php?show_font=123 – halflings 2013-05-04 00:21:08

+0

西蒙,我刚刚尝试过这些问题,与以前一样。它显示旁遮普语的文字,但许多词似乎错位。例如,请仔细注意这些词“ਸਤਿ”“ਪ੍ਰਸਾਦਿ”在模拟器或手机上,它显示的方式不同,但在我的S3手机上,它显示得非常好。 – ivesingh 2013-05-04 00:31:25

+0

确保您使用的是果冻豆 – Simon 2013-05-04 00:34:56

相关问题