这是我的tamil html unicode字符串
முதல்பக்கக்திகள்
我正在使用此代码:
TextView text=(TextView)findViewById(R.id.text); // initialize to your textview
Typeface tf = Typeface.createFromAsset(this.getAssets(),"fonts/tamil.ttf");
text.setTypeface(tf);
text.setText("முதல் பக்க செய்திகள்");
在Android中,这可能吗?
答案 0 :(得分:12)
首先,您必须了解Android操作系统中没有泰米尔语语言支持(除了少数三星和SE手机),直到ICS(4.0)。即便如此,它还有虫子,并且Jelly Bean(4.2)提供了全面的支持。
如果您在应用中使用Unicode Tamil字体,则只会看到框。原因是系统中没有泰米尔语字体。
这个解决方案有一个解决方法。您所要做的就是download the Bamini font并将其放在您的资源文件夹中。并使用字体Bamini创建TypeFace并将其设置为TextView。
Typeface font1 = Typeface.createFromAsset(getAssets(), "fonts/Bamini.ttf");
customText1.setTypeface(font1);
现在使用converter to convert Unicode font into Bamini编码。而不是Unicode文本将转换后的Bamini编码脚本提供给setText
方法。
如果您讨厌所有这些手动编码转换,请查看此library
正如我在上面所说,如果您想在运行应用程序时动态更改编码,那么我为Android编写了consider using the library。该库将帮助您将Unicode字符串转换为Bamini,TSCII,TAB,TAM和Anjal。
设置非常简单。您只需将库导入Android项目并按如下方式调用库即可。
// Initialise the Typeface (assumes TSCII, Bamini, Anjal, TAB or TAM font located inside assets/fonts folder)
Typeface tf = Typeface.createFromAsset(getAssets(),"fonts/mylai.ttf");
// Initialises the TextView
TextView tv = (TextView)findViewById(R.id.textView1);
//Setting the Typeface
tv.setTypeface(tf);
//Magic happens here ;) encoding conversion
String TSCIIString = TamilUtil.convertToTamil(TamilUtil.TSCII, "வணக்கம் அன்ரொயிட்");
//Setting the new string to TextView
tv.setText(TSCIIString);
库中提供了sample app。查看应用程序如何使用库将Unicode字符串转换为Bamini,TAB,TAM,TSCII和Anjal。
请务必阅读我关于如何解决Tamil on Android Native apps and WebViews here in this Answer的全面答案。
答案 1 :(得分:2)
谢谢Mayu ..好消息...
Jeeva,..只需查看此页面的来源http://www.islamkalvi.com/web/unicode_to_bamini.htm ..您将获得一个可用于将Unicode字体转换为Bamini编码的JavaScript函数。
答案 2 :(得分:1)
要将unicode转换为TSCII,请参阅ThamiZha's TamilVisai。他们已经发布了泰米尔语的InputMethod,它的开源。以下是其申请source code的链接。有一个名为UnicodeUtil
的类可以动态地将Unicode转换为TSCII。
答案 3 :(得分:0)
我已将Bamini.ttf用于tamil字体。你需要使用bamini转换器将泰米尔语字体转换为unicode。获取在泰米尔语中执行应用程序的源代码。请访问以下网站