为什么“阿拉伯语字母 PEH”在 Android 3.x 上无法正确显示?

发布于 2024-12-04 23:06:11 字数 922 浏览 1 评论 0原文

在此处输入图像描述

Unicode 字符 阿拉伯字母 PEH 初始形式 'ﭘ'0xFB58。当我使用以下代码显示 Unicode 字符时,Android 2.2、2.3 中的每个 Unicode 字符一切正常。和 4.x 但我在 Android 3.x 上使用 ARABIC LETTER PEH 'ﭘ' 时遇到问题,在本例中为字符显示'~'

Typeface tf = Typeface.createFromAsset(context.getAssets(),"TAHOMA.TTF");

strChars = "";
strChars += (char) 0xFB58;
tvChars.setTypeface(tf);
tvChars.setText(strChars);

我应该提到,当我更改字体或忽略使用 setTypeface(tf) 时,问题仍然存在,

为什么?

如何在 Unicode 中找到 ARABIC LETTER PEH 的代码?


编辑:

请将 0xFB58 () 和 0xFB5E () 与任何以编程方式设置字体。你会发现问题的。第一个未显示,但第二个已正确显示。

enter image description here

In Unicode characters the ARABIC LETTER PEH INITIAL FORM 'ﭘ' is 0xFB58. When I use the following code to show Unicode characters, everything is OK for every Unicode character in Android 2.2, 2.3. and 4.x But I have problem with ARABIC LETTER PEH 'ﭘ' on Android 3.x and in this case character '~' is shown.

Typeface tf = Typeface.createFromAsset(context.getAssets(),"TAHOMA.TTF");

strChars = "";
strChars += (char) 0xFB58;
tvChars.setTypeface(tf);
tvChars.setText(strChars);

I should mention that The problem is remained when I change the font or ignore using setTypeface(tf)

Why?

How can I find the code of ARABIC LETTER PEH in Unicode?


EDIT:

Please compare 0xFB58 () and 0xFB5E () with any font programmatically. you will find the problem. the first one is not shown but the second one is shown correctly.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦归所梦 2024-12-11 23:06:11

您是否尝试添加自己的字体?

获取适合您的波斯语 TTF 字体文件并使用它,这样您就不会依赖操作系统。
http://twigstechtips.blogspot .com/2012/01/android-how-to-use-true-type-fonts-ttf.html

Did you try adding your own fonts?

Get a Persian TTF font file that fits you and use it, this way you won't be OS dependent.
http://twigstechtips.blogspot.com/2012/01/android-how-to-use-true-type-fonts-ttf.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文