Intereting Posts
Дизайн фрагмента: Адаптация к нескольким макетам экрана путем отображения / скрытия фрагментов в рамках одного действия? Не удалось отправить смс с помощью SMSManager в Android ListView addHeaderView заставляет позицию увеличиваться на единицу? Android: реализация progressbar и «загрузка …» для Endless List, например Android Market Взаимодействующая с оболочкой оболочка для CoordinatorLayout и BottomSheetBehavior Исключение исключенного аргумента для Android Сохранение файла с использованием платформы доступа к хранилищу в Android Android Studio 2.0: Почему Instant Run не работает при изменении ресурсов макета xml? Отключить управление кешем волейбола Получение net :: ERR_UNKNOWN_URL_SCHEME при вызове номера телефона с HTML-страницы в Android TabLayout внутри панели инструментов Доступен ли QT для платформ Android и iPhone? Есть ли простой способ создать фрагмент кнопки действий? Android: как создать экземпляр моего настраиваемого представления с помощью конструктора атрибутов Как я могу решить проблему с ошибкой MMUMapper?

Как сделать тамильский unicode в Android

Хорошо,

Поэтому моя проблема в том, что у меня есть XML-тамильский (юникод) фид, я хочу принять это и отобразить его в приложении для Android.

Когда я пытаюсь это сделать, из-за того, что Android не имеет поддержки тамилов, необходимо использовать собственный шрифт.

Но тогда проблема возникает, потому что рендеринг в unicode совершенно другой. Как я могу это решить?

Solutions Collecting From Web of "Как сделать тамильский unicode в Android"

Как я решил это,

Сначала я сопоставил Unicode с шрифтом Bamini с помощью http://www.ucsc.cmb.ac.lk/ltrl/services/feconverter/ .

Затем речь шла только о замене символа юникода символом Bamini. Я отправляю текст в эту функцию и отображаю ее с помощью шрифта Bamini.

public static String initialize(String text) { text = text.replace("ஸ்ரீ", "="); text = text.replace(",", ">"); text = text.replace("ஜௌ", "n[s"); text = text.replace("ஜோ", "N[h"); text = text.replace("ஜொ", "n[h"); text = text.replace("ஜா", "[h"); text = text.replace("ஜி", "[p"); text = text.replace("ஜீ", "[P"); text = text.replace("ஜு", "[{"); text = text.replace("ஜூ", "[_"); text = text.replace("ஜெ", "n["); text = text.replace("ஜே", "N["); text = text.replace("ஜை", "i["); text = text.replace("ஜ்", "[;"); text = text.replace("ஜ", "["); text = text.replace("கௌ", "nfs"); text = text.replace("கோ", "Nfh"); text = text.replace("கொ", "nfh"); text = text.replace("கா", "fh"); text = text.replace("கி", "fp"); text = text.replace("கீ", "fP"); text = text.replace("கு", "F"); text = text.replace("கூ", "$"); text = text.replace("கெ", "nf"); text = text.replace("கே", "Nf"); text = text.replace("கை", "if"); text = text.replace("க்", "f;"); text = text.replace("க", "f"); text = text.replace("ஙௌ", "nqs"); text = text.replace("ஙோ", "Nqh"); text = text.replace("ஙொ", "nqh"); text = text.replace("ஙா", "qh"); text = text.replace("ஙி", "qp"); text = text.replace("ஙீ", "qP"); text = text.replace("ஙு", "*"); text = text.replace("ஙூ", "*"); text = text.replace("ஙெ", "nq"); text = text.replace("ஙே", "Nq"); text = text.replace("ஙை", "iq"); text = text.replace("ங்", "q;"); text = text.replace("ங", "q"); text = text.replace("சௌ", "nrs"); text = text.replace("சோ", "Nrh"); text = text.replace("சொ", "nrh"); text = text.replace("சா", "rh"); text = text.replace("சி", "rp"); text = text.replace("சீ", "rP"); text = text.replace("சு", "R"); text = text.replace("சூ", "R+"); text = text.replace("செ", "nr"); text = text.replace("சே", "Nr"); text = text.replace("சை", "ir"); text = text.replace("ச்", "r;"); text = text.replace("ச", "r"); text = text.replace("ஞௌ", "nQs"); text = text.replace("ஞோ", "NQh"); text = text.replace("ஞொ", "nQh"); text = text.replace("ஞா", "Qh"); text = text.replace("ஞி", "Qp"); text = text.replace("ஞீ", "QP"); text = text.replace("ஞு", "*"); text = text.replace("ஞூ", "*"); text = text.replace("ஞெ", "nQ"); text = text.replace("ஞே", "NQ"); text = text.replace("ஞை", "iQ"); text = text.replace("ஞ்", "Q;"); text = text.replace("ஞ", "Q"); text = text.replace("டௌ", "nls"); text = text.replace("டோ", "Nlh"); text = text.replace("டொ", "nlh"); text = text.replace("டா", "lh"); text = text.replace("டி", "b"); text = text.replace("டீ", "B"); text = text.replace("டு", "L"); text = text.replace("டூ", "^"); text = text.replace("டெ", "nl"); text = text.replace("டே", "Nl"); text = text.replace("டை", "il"); text = text.replace("ட்", "l;"); text = text.replace("ட", "l"); text = text.replace("ணௌ", "nzs"); text = text.replace("ணோ", "Nzh"); text = text.replace("ணொ", "nzh"); text = text.replace("ணா", "zh"); text = text.replace("ணி", "zp"); text = text.replace("ணீ", "zP"); text = text.replace("ணு", "Z"); text = text.replace("ணூ", "Z}"); text = text.replace("ணெ", "nz"); text = text.replace("ணே", "Nz"); text = text.replace("ணை", "iz"); text = text.replace("ண்", "z;"); text = text.replace("ண", "z"); text = text.replace("தௌ", "njs"); text = text.replace("தோ", "Njh"); text = text.replace("தொ", "njh"); text = text.replace("தா", "jh"); text = text.replace("தி", "jp"); text = text.replace("தீ", "jP"); text = text.replace("து", "J"); text = text.replace("தூ", "J}"); text = text.replace("தெ", "nj"); text = text.replace("தே", "Nj"); text = text.replace("தை", "ij"); text = text.replace("த்", "j;"); text = text.replace("த", "j"); text = text.replace("நௌ", "nes"); text = text.replace("நோ", "Neh"); text = text.replace("நொ", "neh"); text = text.replace("நா", "eh"); text = text.replace("நி", "ep"); text = text.replace("நீ", "eP"); text = text.replace("நு", "E"); text = text.replace("நூ", "E}"); text = text.replace("நெ", "ne"); text = text.replace("நே", "Ne"); text = text.replace("நை", "ie"); text = text.replace("ந்", "e;"); text = text.replace("ந", "e"); text = text.replace("னௌ", "nds"); text = text.replace("னோ", "Ndh"); text = text.replace("னொ", "ndh"); text = text.replace("னா", "dh"); text = text.replace("னி", "dp"); text = text.replace("னீ", "dP"); text = text.replace("னு", "D"); text = text.replace("னூ", "D}"); text = text.replace("னெ", "nd"); text = text.replace("னே", "Nd"); text = text.replace("னை", "id"); text = text.replace("ன்", "d;"); text = text.replace("ன", "d"); text = text.replace("பௌ", "ngs"); text = text.replace("போ", "Ngh"); text = text.replace("பொ", "ngh"); text = text.replace("பா", "gh"); text = text.replace("பி", "gp"); text = text.replace("பீ", "gP"); text = text.replace("பு", "G"); text = text.replace("பூ", "G+"); text = text.replace("பெ", "ng"); text = text.replace("பே", "Ng"); text = text.replace("பை", "ig"); text = text.replace("ப்", "g;"); text = text.replace("ப", "g"); text = text.replace("மௌ", "nks"); text = text.replace("மோ", "Nkh"); text = text.replace("மொ", "nkh"); text = text.replace("மா", "kh"); text = text.replace("மி", "kp"); text = text.replace("மீ", "kP"); text = text.replace("மு", "K"); text = text.replace("மூ", "%"); text = text.replace("மெ", "nk"); text = text.replace("மே", "Nk"); text = text.replace("மை", "ik"); text = text.replace("ம்", "k;"); text = text.replace("ம", "k"); text = text.replace("யௌ", "nas"); text = text.replace("யோ", "Nah"); text = text.replace("யொ", "nah"); text = text.replace("யா", "ah"); text = text.replace("யி", "ap"); text = text.replace("யீ", "aP"); text = text.replace("யு", "A"); text = text.replace("யூ", "A+"); text = text.replace("யெ", "na"); text = text.replace("யே", "Na"); text = text.replace("யை", "ia"); text = text.replace("ய்", "a;"); text = text.replace("ய", "a"); text = text.replace("ரௌ", "nus"); text = text.replace("ரோ", "Nuh"); text = text.replace("ரொ", "nuh"); text = text.replace("ரா", "uh"); text = text.replace("ரி", "up"); text = text.replace("ரீ", "uP"); text = text.replace("ரு", "U"); text = text.replace("ரூ", "&"); text = text.replace("ரெ", "nu"); text = text.replace("ரே", "Nu"); text = text.replace("ரை", "iu"); text = text.replace("ர்", "u;"); text = text.replace("ர", "u"); text = text.replace("லௌ", "nys"); text = text.replace("லோ", "Nyh"); text = text.replace("லொ", "nyh"); text = text.replace("லா", "yh"); text = text.replace("லி", "yp"); text = text.replace("லீ", "yP"); text = text.replace("லு", "Y"); text = text.replace("லூ", "Y}"); text = text.replace("லெ", "ny"); text = text.replace("லே", "Ny"); text = text.replace("லை", "iy"); text = text.replace("ல்", "y;"); text = text.replace("ல", "y"); text = text.replace("ளௌ", "nss"); text = text.replace("ளோ", "Nsh"); text = text.replace("ளொ", "nsh"); text = text.replace("ளா", "sh"); text = text.replace("ளி", "sp"); text = text.replace("ளீ", "sP"); text = text.replace("ளு", "S"); text = text.replace("ளூ", "Sh"); text = text.replace("ளெ", "ns"); text = text.replace("ளே", "Ns"); text = text.replace("ளை", "is"); text = text.replace("ள்", "s;"); text = text.replace("ள", "s"); text = text.replace("வௌ", "nts"); text = text.replace("வோ", "Nth"); text = text.replace("வொ", "nth"); text = text.replace("வா", "th"); text = text.replace("வி", "tp"); text = text.replace("வீ", "tP"); text = text.replace("வு", "T"); text = text.replace("வூ", "T+"); text = text.replace("வெ", "nt"); text = text.replace("வே", "Nt"); text = text.replace("வை", "it"); text = text.replace("வ்", "t;"); text = text.replace("வ", "t"); text = text.replace("ழௌ", "nos"); text = text.replace("ழோ", "Noh"); text = text.replace("ழொ", "noh"); text = text.replace("ழா", "oh"); text = text.replace("ழி", "op"); text = text.replace("ழீ", "oP"); text = text.replace("ழு", "O"); text = text.replace("ழூ", "*"); text = text.replace("ழெ", "no"); text = text.replace("ழே", "No"); text = text.replace("ழை", "io"); text = text.replace("ழ்", "o;"); text = text.replace("ழ", "o"); text = text.replace("றௌ", "nws"); text = text.replace("றோ", "Nwh"); text = text.replace("றொ", "nwh"); text = text.replace("றா", "wh"); text = text.replace("றி", "wp"); text = text.replace("றீ", "wP"); text = text.replace("று", "W"); text = text.replace("றூ", "W}"); text = text.replace("றெ", "nw"); text = text.replace("றே", "Nw"); text = text.replace("றை", "iw"); text = text.replace("ற்", "w;"); text = text.replace("ற", "w"); text = text.replace("ஹௌ", "n`s"); text = text.replace("ஹோ", "N`h"); text = text.replace("ஹொ", "n`h"); text = text.replace("ஹா", "`h"); text = text.replace("ஹி", "`p"); text = text.replace("ஹீ", "`P"); text = text.replace("ஹு", "{`"); text = text.replace("ஹூ", "`_"); text = text.replace("ஹெ", "n`"); text = text.replace("ஹே", "N`"); text = text.replace("ஹை", "i`"); text = text.replace("ஹ்", "`;"); text = text.replace("ஹ", "`"); text = text.replace("ஷௌ", "n\\s"); text = text.replace("ஷோ", "N\\h"); text = text.replace("ஷொ", "n\\h"); text = text.replace("ஷா", "\\h"); text = text.replace("ஷி", "\\p"); text = text.replace("ஷீ", "\\P"); text = text.replace("ஷு", "\\{"); text = text.replace("ஷூ", "\\_"); text = text.replace("ஷெ", "n\\"); text = text.replace("ஷே", "N\\"); text = text.replace("ஷை", "i\\"); text = text.replace("ஷ்", "\\;"); text = text.replace('ஷ', '\\'); text = text.replace("ஸௌ", "n]s"); text = text.replace("ஸோ", "N]h"); text = text.replace("ஸொ", "n]h"); text = text.replace("ஸா", "]h"); text = text.replace("ஸி", "]p"); text = text.replace("ஸீ", "]P"); text = text.replace("ஸு", "]{"); text = text.replace("ஸூ", "]_"); text = text.replace("ஸெ", "n]"); text = text.replace("ஸே", "N]"); text = text.replace("ஸை", "i]"); text = text.replace("ஸ்", "];"); text = text.replace("ஸ", "]"); text = text.replace("அ", "m"); text = text.replace("ஆ", "M"); text = text.replace("இ", "๳"); text = text.replace("ஈ", "<"); text = text.replace("உ", "c"); text = text.replace("ஊ", "C"); text = text.replace("எ", "v"); text = text.replace("ஏ", "V"); text = text.replace("ஐ", "I"); text = text.replace("ஒ", "x"); text = text.replace("ஓ", "X"); text = text.replace("ஔ", "xs"); return text = text.replace("ஃ", "/"); } 

Проблема при использовании Bamini заключается в том, что он не позволит вам смешивать тамильские и английские строки вместе. Он превратит все в тамильский. В результате английские струны будут выглядеть смешно.

Например, если вы скажете என் பேர் மயூரேசன் (Mayooresan) , он будет преобразован как என் பேர் மயூரேசன் (அயலழழசநளயn)

Поэтому я рекомендую вам использовать TSCII , TAB или TAM .

Если вам нравится конвертировать динамически, я бы посоветовал вам проверить бесплатную библиотеку, которую я написал, для динамического преобразования кодировки. После импорта библиотеки все, что вам нужно сделать, это просто.

 // 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); 

Вы можете прочитать больше на эту тему в моем ответе здесь