孟加拉语unicode字符显示问题

时间:2011-06-29 05:59:53

标签: android unicode

我创建了一个Android应用程序,我想显示无条件的bengali句子 为此我完成了以下步骤。

步骤1:我将名为Siyamrupali.ttf的bengali字体存储在Assets文件夹中。

步骤2:在main.xml文件中,我拿了一个文本视图,显示字符。

第3步:在我的MainActivity中。 Java我写了这个......

public class mainAc extends Activity 
{

    AssetManager arabi_font;

    TextView tx;
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        tx=(TextView)findViewById(R.id.tv);
        try
        {
            String str="\u0986";
            tx.setTypeface(Typeface.createFromAsset(getAssets(),"Siyamrupali.ttf"));
            tx.setText(str);    
        }
        catch(Exception ex)
        {
            tx.setText("font cannot load: "+ ex.toString() );
        }   
    }

然后输出show 哪一个是正确的但是当我写String str="\u0986\u09AE\u09Bf"时; 在MainActivity中。 Java

然后输出显示আমই但我应该是আমি

我现在可以做些什么来解决这个问题。任何机构都会给我一些建议或链接或示例代码。

2 个答案:

答案 0 :(得分:0)

\ u0986 \ u09A \ u09BF不是有效的unicode字符。我担心你为什么没有得到错误。请查看以下内容,如

Unicode character of Bengali scripts

由于

答案 1 :(得分:0)

Android尚未对所有Unicode提供完整的复杂文本布局支持,而孟加拉语matras是一项无法正确渲染的功能。见issue 5925。遗憾!