Veuillez excuser la longueur de cette question. Je dois expliquer tout cela pour aider les autres et éviter aux contributeurs utiles de fournir une réponse sans demander d'explications.
Mon exigence en une ligne: "permettre à un téléphone Android d’afficher correctement les caractères tamouls".
Élaboration: le tamoul, comme toute autre langue indienne, possède un système de rendu de caractère complexe. Contrairement à l'anglais ou à un autre script basé sur le latin, le glyphe (ce que vous voyez à l'écran) est composé de plusieurs caractères. Android n'a pas la capacité de rendre de tels scripts complexes (avec des exceptions). Mon but est de savoir comment je peux fournir une telle capacité à un téléphone ou une tablette Android.
Petit arrière-plan que j'ai rassemblé jusqu'ici: Pour afficher un glyphe à l'écran, Android a d'abord besoin d'un fichier de police adapté. Le périphérique Android a un dossier / système / polices qui en contient quelques-uns. Le fichier le plus intéressant de ce dossier est le fichier DroidSansFallback.ttf. Comme son nom l'indique, lorsque le système Android ne parvient pas à trouver un caractère dans les polices système (il peut s'agir de DroidSans.ttf ou de DroidSans-Bold.ttf, etc.), il revient à le rechercher dans DroidSansFallback.ttf.
En remplaçant un fichier de police approprié à partir du PC (Latha.ttf ou Lohit-Tamil.ttf - il s’agit de polices pour le tamoul), DroidSansFallback.ttf permettra d’afficher des caractères tamouls dans l’appareil. Ce n'est pas si facile à remplacer et cela implique d'enraciner le périphérique et de monter le système en écriture.
Malgré ces problèmes, même si le fichier DroidSansFallback.ttf est remplacé, les caractères tamouls affichés ne sont pas correctement rendus. Le caractère tamoul "" est une conjonction de deux caractères et au lieu de s'afficher sous la forme "தி", il sera affiché sous la forme "" sans espace entre eux. Bien que cela soit suffisant pour lire des messages courts, il ne peut pas être utilisé pour lire des livres, etc.
À partir d'Android 4.0, le tamoul et d'autres langues sont prises en charge via un navigateur, comme indiqué dans la vue d'ensemble de l'API Android 4.x, comme indiqué ci-dessous.
Support for Indic fonts (Devanagari, Bengali, and Tamil, including the complex
character support needed for combining glyphs) in WebView and the built-in Browser
Les mots à noter sont "dans WebView et le navigateur intégré", ce qui signifie que les caractères tamouls seront parfaitement restitués s’ils sont au format HTML et ne sont pas rendus autrement. Opera et quelques autres navigateurs le faisaient même avant Android 4.0 en substituant image au lieu de caractère.
J'ai remarqué que, sur quelques appareils ciblant le marché indien (ex: LG Optimus One, la plupart des téléphones et tablettes Samsung), il est capable d'afficher correctement le tamoul dans un navigateur et même ailleurs que dans le navigateur, notamment dans les contacts, les messages texte, les noms de fichiers, etc. À ma grande surprise, ils le font même depuis Android 2.3. J'ai également remarqué que le même modèle ciblant un pays non indien exécutant la même version d'Android ne prend pas en charge l'affichage de caractères tamoul.
Cela m'a incité à approfondir mes recherches et à conclure qu'Android (comme tout autre système d'exploitation basé sur Linux) dépend d'un moteur de rendu des polices pour afficher des caractères aussi complexes. Les deux moteurs que j'ai rencontrés sont Skia et Harfbuzz. J'ai remarqué que LG utilise skia et Samsung utilise des bibliothèques Harfbuzz dans ses appareils pour apporter cette capacité.
Je suis tombé sur de nombreux sites Web suggérant de remplacer ces bibliothèques et polices. Cela n'a pas fonctionné et a pour résultat le gel. Heureusement, j'ai sauvegardé avec clockworkmod et j'ai donc restauré mon téléphone.
Bien que j'aie expliqué cela avec le tamoul, cela s'applique à la plupart des langues indiennes.
Voici ma question (si vous lisez encore;)) Maintenant, il est clair qu'un fichier TTF doit être présent pour fournir des caractères et qu'une bibliothèque appropriée (libskia.so ou libharfbuzz.so) est nécessaire pour les restituer correctement. Est-ce que quelqu'un sait comment ces fabricants sont capables de fournir cette capacité? Je suis même prêt à construire ma propre ROM à partir d'AOSP (Android Open Source Project).
la source
Réponses:
Téléphone enraciné
Android sous le dossier
/system/fonts
contient un fichier nommé "DroidSansFallback.ttf" censé contenir tous les caractères de la langue. Actuellement, il manque de soutien pour beaucoup, y compris le tamoul.On peut toujours remplacer le fichier par un fichier contenant des caractères tamouls, permettant ainsi l’utilisation du tamoul sur votre téléphone.
Du fil des développeurs XDA - DroidSans Fallback Indic Font , les utilisateurs ont essayé et utilisé le tamoul avec succès sur leurs téléphones.
Pour exécuter cette méthode, vous devez avoir un accès root sur votre téléphone afin de pouvoir accéder au
/system
fichier de remplacement et le modifier:Suivez le fil XDA Developers pour voir comment remplacer le fichier :
Remarque: le point de montage n'est pas le même pour tous les téléphones.
APP Android
Bien que la méthode ci-dessus puisse plaire à certains utilisateurs, je préfère une application lorsque celle-ci est disponible.
De plus, le tamoul a un clavier avec un total de 247 caractères, tandis que l'anglais a seulement besoin de 26 caractères. Cela devient donc un problème majeur lorsque vous tapez:
Voir Wikipedia :: Langue tamoule - Système d'écriture
Grâce à Krishan et à ses travaux sur ce sujet, il existe déjà une application permettant de traiter les deux problèmes, l’utilisation du tamoul à l’échelle du système et un clavier permettant de taper des caractères tamouls.
Lisez l'article de Krishan intitulé Tamil Unicode Font for Android - Working pour des informations détaillées sur le développement de cette solution.
Résumer
Krishan a développé et publié deux applications sur Google Play qui traitent complètement du problème de disposer d'un système d'exploitation Android complet en tamoul:
Clavier Unicode Tamil
Tamil Unicode Police
la source
Vous semblez décrire le problème 4153 , un bogue connu sous Android.
Ce problème a été signalé comme résolu dans Jelly Bean. Si cette capture d'écran est correcte, le problème doit être résolu. (Je ne peux pas vraiment me dire, mais j'ai accès à Jelly Bean et je peux en faire des captures d'écran.)
la source
Installer le navigateur Web Opera Mini
Dans le navigateur Web Opera Mini, tapez "about: Config"
utiliser des polices bitmap pour les scripts complexes: sélectionnez Oui
Vous pouvez afficher tous les sites en police tamil dans n'importe quel téléphone mobile de marque.
Cordialement
la source
Vous n'avez pas besoin de rooter et de remplacer la police sur le système Android.
Remplacez le micrologiciel de votre appareil par un micrologiciel similaire pour la région indienne pour restituer correctement la police Devanagari. Les microprogrammes des autres régions ne rendent pas correctement les polices Devanagari. Les polices Devanagari sont correctement rendues sur la version Android 2.x. de Indian Region.
la source