web-dev-qa-db-ja.com

Androidのタミル語フォント

タミル語のニュースアプリケーションをAndroidバージョン2.3.3。ただし、タミル語フォントはAndroidバージョン4.0以降でのみ適切に開発されています。Android mobileのすべてのバージョンで表示したいと思います。

baminimylaiなどのいくつかのタミル語フォントで問題を解決しようとしましたが、それらはより高いAndroidバージョンでのみ機能しました。

11
Loganathan

まず第一に、ICS(4.0)までAndroid OS(一部のSamsungおよびSEモバイルを除く)ではタミル語のサポートがないことを理解する必要があります。それでもバグがあり、完全なサポートが提供されますジェリービーンズ(4.2)。

アプリでUnicodeタミル語フォントを使用している場合にのみボックスが表示されます。理由は、システムにタミル語フォントがないためです。

1.手動による方法

このソリューションには回避策があります。あなたがしなければならないのは、 Baminiフォントをダウンロードする そしてそれをあなたのアセットフォルダに置くことです。そして、フォントBaminiを使用してTypeFaceを作成し、TextViewに設定します。

Typeface font1 = Typeface.createFromAsset(getAssets(), "fonts/Bamini.ttf");
customText1.setTypeface(font1);

nicodeフォントをBaminiに変換するコンバーター エンコーディングを使用します。 Unicodeテキストの代わりに、変換されたBaminiエンコードスクリプトをsetTextメソッドに提供します。

2.ライブラリの使用

これらすべての手動エンコーディング変換が嫌いな場合は、これをチェックしてください library

上記の行で述べたように、アプリケーションの実行中にエンコーディングを動的に変更したい場合は、 ライブラリの使用を検討してください Android用に作成しました。このライブラリは、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);

サンプルアプリ ライブラリと一緒に利用できます。ライブラリを使用してUnicode文字列をBamini、TAB、TAM、TSCII、およびAnjalに変換する方法についてアプリを確認してください。

ライブラリを使用すると、このようなものが得られます。

Screen Shot Tamil Unicode Converter Utill

Androidで利用可能なTypeFaceクラスを利用する必要があります。 BaminiまたはTSCIIエンコーディングのいずれかを使用できます(MylaiはTSCIIフォントです)。

免責事項:私はこのライブラリを作成しました。

3.WebViewの場合

WebView内にラップされたhtmlとCSSを使用して開発している場合は、 このアプリケーションのソース を見てください。 CSS3のfontface機能を利用する必要があります。

まず、このようにスタイルを宣言する必要があります

@font-face {
 font-family: MyCustomFont;
 src: url("Bamini.ttf") /* TTF file for CSS3 browsers */
}

次に、タグでMyCustomFontを使用する必要があります。たとえば、全身に設定したい場合(この場合ははるかに簡単です)

body {
 font-family: MyCustomFont, Verdana, Arial, sans-serif;
 font-size: medium;
 color: black
}

これがあなたにふさわしい頭を与えることを願っています。 Playストアでもっとタミル語のアプリを見たいと思っています。

26
Jay Mayu

TAbを埋め込む必要はありません。Unicodeができました。このタミル語のUnicodeフォントを使用してください http://visualmediatech.com.fonts

0
user2840711