其他分享
首页 > 其他分享> > Android:已连接且彩色的阿拉伯字母

Android:已连接且彩色的阿拉伯字母

作者:互联网

我想在android视图(webview或textview)上显示连接的和彩色的阿拉伯字母.
首先,我使用了没有颜色的TextView,并且阿拉伯语正确显示.

当我使用spannableString时,彩色字母会与单词断开连接.

其次,我使用了带有html和字体标签的WebView.我有同样的结果.

每次我尝试在单词的字母上加上颜色时,该字母显示都与单词断开.

有谁能解决这个问题?

Android版本> 4.0

解决方法:

经过许多奋斗,感谢上帝,我找到了解决方案.
 使用开源库:

Better-Arabic-Reshaper

1:它将以unicode的形式返回android文本.

2:然后您应用如下跨度颜色:

    final SpannableStringBuilder ssb = new SpannableStringBuilder();
    final int flag = Spannable.SPAN_EXCLUSIVE_EXCLUSIVE;

    //converting arabic text to unicode chars
    String dd=ArabicUtilities.reshape("بِسْمِ اللَّهِ الرَّحْمَنِ الرَّحِيمِ");
    ssb.append(dd);
    //applying colors
    ssb.setSpan(new ForegroundColorSpan(Color.RED), 0, 1, flag);
    ssb.setSpan(new ForegroundColorSpan(Color.RED), 1, 2, flag);
    ssb.setSpan(new ForegroundColorSpan(Color.GREEN), 2, 3, flag);
    ssb.setSpan(new ForegroundColorSpan(Color.BLUE), 3, 4, flag);
    //seting formated spanned text
    textview.setText(ssb);

标签:colors,arabic,android
来源: https://codeday.me/bug/20191123/2064089.html