Yandex.Translate est un service web fourni par Yandex, permettant la traduction automatique de texte ou des pages web d’une langue vers une autre langue.
Le service utilise un système statistique de traduction automatique par auto-apprentissage, auto-développé. Le système construit un dictionnaire de correspondances, fondées sur l’analyse de millions de textes traduits.
Il convient de noter que la fonction de traduction obtenue dans les pages de résultats de recherche (sur le bouton « Traduire ») est apparue en 2009 et a été réalisée sur la base de PROMT.
En outre, le traducteur est intégré dans le navigateur Yandex et propose de traduire automatiquement du texte à partir des langues étrangères prise en charge.
Utiliser l’API Yandex dans Unity
Qu’est ce qu’une API ?
Une API permet de rendre disponibles les données ou les fonctionnalités d’une application existante afin que d’autres applications les utilisent. Voici qui devrait rendre la notion d’interface de programmation applicative plus claire 😊
Utiliser une API permet donc d’utiliser un programme existant plutôt que de le re-développer. C’est donc un grand gain de temps à la clé.
Exploiter l’API de traduction Yandex dans UNITY
Ce tutoriel se fera en 3 étapes afin d’exploiter l’api de Yandex dans Unity :
- Utiliser les UnityWebRequest afin de pouvoir récupérer la réponse de l’API au format XML
- Construire l’URL pour exploiter l’API
- Parser (Extraire) le Texte traduit reçu.
Code Source du Tutoriel
using System.Collections; using UnityEngine; using UnityEngine.UI; using UnityEngine.Networking; public class Yandex : MonoBehaviour { public Text txt; public void Traduire() { string key = "Votre API Key"; string url = "https://translate.yandex.net/api/v1.5/tr/translate?lang=fr-en&key=" + key + "&text=" + txt.text; StartCoroutine(GetRequest(url)); } IEnumerator GetRequest(string uri) { using (UnityWebRequest webRequest = UnityWebRequest.Get(uri)) { yield return webRequest.SendWebRequest(); if(webRequest.isNetworkError) { txt.text = webRequest.error; } else { txt.text = ParseResponse( webRequest.downloadHandler.text); } } } string ParseResponse(string XlmResponse) { int startPos = XlmResponse.IndexOf("<text>"); int endPos = XlmResponse.IndexOf("</text>"); return XlmResponse.Substring(startPos + 6, endPos-startPos -6); } }
Yandex à fait ses preuves il est aussi intégrer par le MIT dans AppInventor
Conclusion
L’API de Yandex ouvre d’énorme perspective, elle permet de faire de la traduction à la volée dans de nombreux langage:
Language | Code | Language | Code |
---|---|---|---|
Azerbaijan | az | Malayalam | ml |
Albanian | sq | Maltese | mt |
Amharic | am | Macedonian | mk |
English | en | Maori | mi |
Arabic | ar | Marathi | mr |
Armenian | hy | Mari | mhr |
Afrikaans | af | Mongolian | mn |
Basque | eu | German | de |
Bashkir | ba | Nepali | ne |
Belarusian | be | Norwegian | no |
Bengali | bn | Punjabi | pa |
Burmese | my | Papiamento | pap |
Bulgarian | bg | Persian | fa |
Bosnian | bs | Polish | pl |
Welsh | cy | Portuguese | pt |
Hungarian | hu | Romanian | ro |
Vietnamese | vi | Russian | ru |
Haitian (Creole) | ht | Cebuano | ceb |
Galician | gl | Serbian | sr |
Dutch | nl | Sinhala | si |
Hill Mari | mrj | Slovakian | sk |
Greek | el | Slovenian | sl |
Georgian | ka | Swahili | sw |
Gujarati | gu | Sundanese | su |
Danish | da | Tajik | tg |
Hebrew | he | Thai | th |
Yiddish | yi | Tagalog | tl |
Indonesian | id | Tamil | ta |
Irish | ga | Tatar | tt |
Italian | it | Telugu | te |
Icelandic | is | Turkish | tr |
Spanish | es | Udmurt | udm |
Kazakh | kk | Uzbek | uz |
Kannada | kn | Ukrainian | uk |
Catalan | ca | Urdu | ur |
Kyrgyz | ky | Finnish | fi |
Chinese | zh | French | fr |
Korean | ko | Hindi | hi |
Xhosa | xh | Croatian | hr |
Khmer | km | Czech | cs |
Laotian | lo | Swedish | sv |
Latin | la | Scottish | gd |
Latvian | lv | Estonian | et |
Lithuanian | lt | Esperanto | eo |
Luxembourgish | lb | Javanese | jv |
Malagasy | mg | Japanese | ja |
Malay | ms |
Avec un peu de code, il est possible de traduire son interface , ou encore traduire des sous-titres de cinématique, etc… Une API idéal gratuite qui vous permettra de rendre votre jeu multilingue.
Poster un Commentaire
Vous devez vous connecter pour publier un commentaire.