Por favor, desculpe o comprimento desta pergunta. Preciso explicar tudo isso para ajudar os outros e evitar que colaboradores úteis forneçam respostas sem pedir esclarecimentos.
Minha exigência em uma linha: "ativar um telefone Android para exibir caracteres tamil corretamente".
Elaboração: o tâmil, como qualquer outra língua indiana, possui um complexo sistema de renderização de caracteres. Ao contrário do inglês ou de outro script latino, ele possui um glifo (o que você vê na tela) composto por mais de um caractere. O Android não tem capacidade de renderizar scripts tão complexos (com exceções). Meu objetivo é saber como posso fornecer essa capacidade para um telefone ou tablet Android.
Pouco conhecimento que reuni até agora: para exibir um glifo na tela, o Android precisa primeiro de um arquivo de fonte adequado. O dispositivo Android possui uma pasta / sistema / fontes com poucos deles. O arquivo mais interessante nessa pasta é o DroidSansFallback.ttf. Como o nome sugere, quando o sistema do Android falha em encontrar um caractere nas fontes do sistema (que pode ser DroidSans.ttf ou DroidSans-Bold.ttf etc), ele volta a procurá-lo no DroidSansFallback.ttf.
Ao substituir um arquivo de fonte adequado do PC (Latha.ttf ou Lohit-Tamil.ttf - essas são fontes para o Tamil) e o DroidSansFallback.ttf permitirá exibir caracteres tâmeis no dispositivo. Não é tão fácil de substituir e envolve fazer o root do dispositivo e montar o sistema como gravável.
Apesar desses problemas, mesmo que o DroidSansFallback.ttf seja substituído, os caracteres tâmeis exibidos não serão renderizados corretamente. O caractere tâmil "தி" é um conjunto de dois caracteres e, em vez de ser exibido como "தி", será exibido como "த without" sem espaço no meio. Embora isso seja suficiente para ler mensagens curtas, ele não pode ser usado para ler livros etc.
A partir do Android 4.0 nas divisões, o Tamil e outros idiomas são suportados pelo navegador, conforme mencionado na visão geral da API do Android 4.x, como mostrado abaixo.
Support for Indic fonts (Devanagari, Bengali, and Tamil, including the complex
character support needed for combining glyphs) in WebView and the built-in Browser
As palavras a serem observadas estão "no WebView e no navegador interno", o que significa que os caracteres tâmeis serão renderizados perfeitamente se forem renderizados como conteúdo HTML e não serão renderizados de outra forma. O Opera e outros poucos navegadores fizeram isso antes do Android 4.0, substituindo imagem em vez de caractere.
Notei que em alguns dispositivos que visam o mercado indiano (por exemplo: LG Optimus One, a maioria dos telefones e tablets Samsung) são capazes de exibir o Tamil adequadamente no navegador e até mesmo em locais fora do navegador, como contatos, mensagens de texto, nomes de arquivos etc. Para minha surpresa, eles fazem isso mesmo no Android 2.3 em diante. Também notei que o mesmo modelo de país não indiano que executa a mesma versão do Android não suporta a exibição de caracteres tâmeis.
Isso me levou a investigar mais e chegou à conclusão de que o Android (como outro sistema operacional baseado em Linux) depende de um mecanismo de renderização de fontes para exibir caracteres tão complexos. Os dois motores que encontrei são o Skia e o Harfbuzz. Notei que a LG usa o skia e a Samsung usa as bibliotecas Harfbuzz em seus dispositivos para trazer essa capacidade.
Me deparei com muitos sites sugerindo substituir essas bibliotecas e fontes. Não funcionou e resulta em congelamento. Felizmente fiz backup usando o clockworkmod e, portanto, restaurei meu telefone.
Embora eu tenha explicado isso com o tâmil, isso é aplicável à maioria das línguas indianas.
Aqui está minha pergunta (se você ainda está lendo;)) Agora, com certeza está claro que um arquivo TTF deve estar presente para fornecer caracteres e são necessárias bibliotecas apropriadas (libskia.so ou libharfbuzz.so) para renderizá-las corretamente. Alguém sabe como esses fabricantes são capazes de fornecer a capacidade? Estou pronto para criar minha própria ROM a partir do AOSP (Android Open Source Project).
fonte
Respostas:
Telefone rooteado
O Android na pasta
/system/fonts
contém um arquivo chamado "DroidSansFallback.ttf" que deve conter todos os caracteres do idioma. Atualmente, falta suporte para muitos, incluindo o tâmil.Pode-se sempre substituir o arquivo por um que contenha caracteres tâmeis, permitindo assim o uso do tâmil no seu telefone.
No XDA Developers Thread - DroidSans Fallback Indic Font , os usuários tentaram e usaram com sucesso o Tamil em seus telefones.
Para realizar esse método, você precisa de acesso root ao seu telefone, para acessar
/system
e alterar o arquivo Fallback:Siga o tópico XDA Developers para ver como substituir o arquivo :
Nota: o ponto de montagem não é o mesmo para todos os telefones.
APP para Android
Embora o método acima possa apelar para alguns usuários, prefiro um APP quando disponível.
Além disso, o Tamil possui um teclado com um total de 247 caracteres, enquanto o inglês precisa apenas de 26. Portanto, esse se torna um grande problema ao digitar:
Veja linguagem Wikipedia :: Tamil - Sistema de Escrita
Graças a Krishan, e é um trabalho sobre esse assunto, já existe um aplicativo disponível para lidar com ambos os problemas, o uso do Tamil em todo o sistema e um teclado que pode ser usado para digitar caracteres tâmeis.
Leia a postagem de Krishan intitulada Tamil Unicode Font para Android - Trabalhando para obter informações detalhadas sobre o desenvolvimento desta solução.
Resumir
Krishan desenvolveu e publicou dois aplicativos no Google Play que tratam completamente do problema de ter um sistema operacional Android inteiro no Tamil:
Tamil Unicode Keyboard
Tamil Unicode Font
fonte
Parece que você está descrevendo o problema 4153 , um bug conhecido no Android.
Esse problema foi relatado como resolvido no Jelly Bean. Se esta captura de tela estiver correta, o problema deverá ser resolvido. (Eu realmente não posso dizer a mim mesma, mas tenho acesso ao Jelly Bean e posso fazer capturas de tela a partir dele.)
fonte
Instalar o navegador Opera Mini
No navegador Mini Opera, digite "about: Config"
usar fontes de bitmap para scripts complexos: selecione Sim
Você pode visualizar todos os sites em fonte tamil em qualquer telefone celular de marca
Saudações
fonte
Você não precisa fazer o root e substituir a fonte no sistema Android.
Substitua o firmware do seu dispositivo pelo firmware da região indiana semelhante para renderizar a fonte Devanagari corretamente. O firmware de outras regiões não processa as fontes Devanagari corretamente. As fontes Devanagari são renderizadas corretamente na versão 2.x da região indiana do Android.
fonte