当我用drawtext在画布上写阿拉伯语文本时,在某些设备中它写得正确但在其他设备中它是反转的。例如在某些سلام和其他مالس中。 我通过arabicReshaper转换字符来解决阿拉伯语形式的单独字符问题。
答案 0 :(得分:0)
首先,我建议您查看this链接。
如何检测何时需要反转单词,何时不反复。
您可以使用以下函数检测波斯语字符,因此当文本为波斯语时,您需要反转它们的序列。
public boolean isPersian(String persianText)
{
return persianText.matches("/[\u0600-\u065F\u066A-\u06EF\u06FA-\u06FF]/");
}
如果您的字符串包含波斯字符(非数字),则上述函数返回true,否则返回false。
在某些设备中,پ字符显示正确,但在其他设备中 设备不显示该字符。我使用自定义字体,我确定 字体有پ字符。
这是一个bug并且依赖于你的android版本,在android 2.3,2.2等这个字符没有正确显示你无法做任何事情来解决它,但是这个问题目前已经解决了在ICS和JB。