Traduire une application Android en chinois simplifié
Manuce traduit le fichier res/values/strings.xml de votre application Android en chinois simplifié et vous rend le même fichier, structure intacte, avec un rapport chaîne par chaîne. Les plurals sont rédigés pour la catégorie other, la seule du chinois, et les variables comme %1$s sont contrôlées. Il vous reste à placer le fichier dans le dossier de ressources chinois et à vérifier l'affichage sur l'appareil.
Combien ça coûte
Pour les fichiers de langue d'une application Android totalisant environ 2 000 mots, vers le chinois :
Comprendre, usage interne.
Prêt à transmettre, par le spécialiste technique.
Relecture croisée. Pour ce qui engage.
Prix pour une langue, mise en page d'origine comprise. TVA non applicable, article 293 B du CGI. Le devis exact, calculé sur le nombre de mots de votre fichier, s'affiche avant paiement.
Ce que le chinois simplifié change dans vos chaînes
Une chaîne chinoise compte en général deux à trois fois moins de caractères que sa source, mais chaque idéogramme est nettement plus large qu'une lettre latine. Paramètres de notification devient 通知设置 : quatre caractères, et pourtant le bouton ne gagne presque pas de place. Ne comptez pas sur la traduction pour régler un libellé qui débordait déjà.
- Pas d'espaces entre les mots. Android peut couper la ligne entre deux caractères quelconques : un
TextViewsur deux lignes se comporte autrement qu'en français, etellipsizepeut tronquer au milieu d'un mot composé. - Ponctuation pleine chasse. Virgule
,, point。, deux-points:, guillemets“ ”. Une virgule ASCII au milieu d'une phrase chinoise se remarque tout de suite. - Polices. Une police latine embarquée dans
res/fontne contient pas les hanzi : le système bascule vers sa propre police chinoise, avec une hauteur de ligne et une graisse qui peuvent différer du reste de l'interface. Les titres en gras et les champs à hauteur fixe sont à regarder en priorité. - Grands nombres. Le chinois compte par dizaines de milliers : 15 000 vues s'écrit couramment
1.5万. Si votre code formate lui-même ces nombres, traduire la chaîne qui les entoure ne suffit pas.
Plurals, classificateurs et ordre des variables
Le chinois n'a qu'une catégorie de pluriel CLDR, other. Dans un bloc <plurals>, c'est l'item quantity="other" qui porte le texte : %d photos devient %d 张照片, et le nom ne change pas de forme selon le nombre. La difficulté est ailleurs : le chinois place un classificateur entre le nombre et le nom, 张 pour une photo, 首 pour une chanson, 条 pour un message. Une chaîne générique comme %d éléments se traduit selon ce qu'elle compte réellement ; un commentaire XML au-dessus de la chaîne permet de choisir le bon.
L'ordre des mots change aussi. Bienvenue dans %1$s, %2$s donne plutôt %2$s,欢迎使用 %1$s : le nom de l'utilisateur passe devant. Avec des arguments numérotés, ce déplacement est sans risque ; avec deux %s anonymes, il inverserait l'affichage. Numérotez-les avant l'envoi.
Les phrases assemblées dans le code, du type getString(R.string.bonjour) + nom, posent le même problème sans qu'aucun outil puisse le corriger depuis le fichier : en chinois, le nom se place souvent avant la formule. Une seule chaîne avec variable est préférable.
Ce que Manuce rend exactement, et ce qu'il ne fait pas
Vous déposez res/values/strings.xml ; vous récupérez le même fichier, en chinois simplifié, prêt à remettre dans le projet.
- Les
string,string-arrayetpluralssont traduits ; les chaînes marquéestranslatable="false"restent intactes. - Indentation, ordre des clés, commentaires, guillemets, fins de ligne, encodage et BOM sont conservés : seules les valeurs changent, et le diff reste lisible.
- Apostrophes et caractères spéciaux sont échappés à la manière d'Android (
\',\"), ce qui compte quand une valeur chinoise garde un nom de marque écrit avec une apostrophe. - Chaque valeur traduite est comparée à la source : si un
%1$sou une balise<b>manque et que l'écart persiste, la valeur source est gardée et le rapport l'indique. - Clés, valeurs vides, URL, adresses email, nombres, couleurs, formats de date et identifiants ne sont pas traduits.
Le rapport liste les chaînes traduites, celles laissées telles quelles et la raison. Manuce ne traduit que ce fichier : il ne touche ni aux textes écrits en dur dans les layouts ou le code, ni aux images contenant du texte, et ne contrôle pas le rendu à l'écran. Il ne produit pas de traduction assermentée. Le chinois traditionnel (Taïwan, Hong Kong) est une langue distincte chez Manuce : commandez-le séparément si vous visez aussi ces marchés.
Préparer le fichier et vérifier sur un appareil en chinois
Un peu de préparation évite la plupart des retouches après coup.
- Marquez ce qui ne se traduit pas. Nom de l'application s'il reste en caractères latins, noms de produits, codes :
translatable="false". - Numérotez les variables dans toute chaîne qui en contient plus d'une.
- Commentez les chaînes courtes et ambiguës.
Nouveaupeut être un bouton de création (新建) ou l'étiquette d'un élément récent (新) ; sans contexte, le choix est un pari. - Ne figez pas les dates. Un format comme
dd/MM/yyyyn'est pas traduit, alors qu'en Chine on écrit2025年3月14日. Laissez Android formater la date selon la locale.
Après livraison, placez le fichier dans res/values-zh-rCN/, ou values-b+zh+Hans/ si votre version minimale d'Android le permet. Passez ensuite l'appareil ou l'émulateur en chinois simplifié et parcourez les écrans : boutons à largeur fixe, textes tronqués, hauteur de ligne avec la police système, ponctuation pleine chasse en fin de phrase. Lisez enfin le rapport : une chaîne restée en langue source signale presque toujours une variable ou une balise à revoir.
En pratique
- Récupérez res/values/strings.xml et marquez translatable="false" ce qui doit rester tel quel.
- Numérotez les variables (%1$s, %2$s) et commentez les chaînes ambiguës ou les compteurs.
- Déposez le fichier, choisissez le chinois simplifié et lisez l'extrait gratuit avant de payer.
- Placez le fichier rendu dans res/values-zh-rCN/ et lancez l'application en chinois simplifié.
- Parcourez les écrans et consultez le rapport pour les chaînes laissées en source.
Questions fréquentes
Faut-il garder les items one et other dans les plurals chinois ?
Le chinois n'utilise que la catégorie other : c'est elle qu'Android affiche, quel que soit le nombre. Le texte traduit y est écrit, par exemple %d 张照片. Le vrai point d'attention est le classificateur, qui dépend de ce que l'on compte.
Chinois simplifié ou traditionnel : lequel choisir ?
Le simplifié vise la Chine continentale et Singapour, le traditionnel Taïwan et Hong Kong. Chez Manuce, ce sont deux langues distinctes, à commander séparément. Le fichier traditionnel se place dans un dossier de ressources différent, comme values-zh-rTW.
Le texte chinois est plus court : mes boutons auront-ils plus de place ?
Rarement. Il y a moins de caractères, mais chacun est plus large qu'une lettre latine, si bien que la place occupée varie peu. Un libellé qui débordait en français débordera probablement en chinois ; testez sur un petit écran.
Comment le prix est-il calculé ?
Le devis est immédiat au dépôt du fichier et porte sur le nombre exact de mots des valeurs, clés et balises exclues. Le chinois est une langue à supplément, avec un coefficient ×1,6 sur le prix au mot.
Que se passe-t-il si une variable disparaît dans la traduction ?
Chaque valeur traduite est comparée à la source, variables et balises comprises. Si l'écart persiste, la valeur source est conservée et le rapport le signale, pour que l'application ne plante pas sur un format manquant. Vous pouvez alors traiter cette chaîne à la main.
Le spécialiste qui s’en charge
Ce sujet est confié à Dédale, le spécialiste technique. Voir comment il travaille.
Le même fichier, vers une autre langue
Vers le chinois, d’autres fichiers
À lire aussi
Testez sur votre fichier, gratuitement
Un extrait de votre fichier traduit au niveau choisi, avant tout paiement. Vous jugez, puis vous décidez.