GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: xEagl3Zx le 08 Septembre 2009, 21:01:20
-
Salut all.
L'autre jour j'ai demandé si il y avait un FS de traduction FR-EN = EN-FR on ma repondu que non mais que s'etait fesable ...
Et se matin je me suis dit tien j'ai envie de creer se FS ... Mais tout seul sa me prendra trop de temp donc j'aimerai trouver des partenaires pour creer se FS qui servira a tout le jeux samp exemple : Nous francais voulons parler a un anglais mais faut aller parla parlit donc grace au traducteur je pourrai lui parler au lieu d'aller parla parlit et l'anglais pourrait me repondre ...
Et j'ai trouver un dico anglais francais ... sur internet avec tout les mots ... mais je voudrais des partenaire au moin 13 personnes ... moi par exemple moi je fe tout les lettre a b c et l'autre d e f et encore un otre ghi inside suite ...
Merci de venir participé ...
++TZ++
-
Gl pour le projet ca va être un peu chaud ca peu prendre plusieurs mois voir des ans
-
Ouch tu veux faire un FS qui traduit tout les mots de francais en anglais et de anglais en francais ? Bon courage alors :cheers
Sa va etre long ^^
-
J'lache une idée comme sa sans être sur que sa soit possible
Pour simplifier le truc le mieux je pense serait de faire un plugin qui envoi le texte sur un site de traduction (souvent le texte peux être passé en lien il me semble) et recupere le resultat de la traduction fin j'sais pas si c'est fesable ^^
-
de toute facon comme le dit MrFredo y a un plugin qui se nomme pawncurl et tu peut utilise google translator =) avec
-
Oui encore faut il arriver a recuperer le resultat si sa renvoi la page HTML faut arriver a ne recuperer que le texte de retour ou alor j'sais pas si ya un outil de google translate qui ne renverai que le texte sa serait plus simple mais j'sais pas si c'est possible
-
Salut,
vite comme ça, je suis presque certain qu'il existe une base de donnée mysql contenant une telle chose....
++Sim++
-
J'vais tenter un truc en PHP pour ne recuperer que le texte que renvoi la traduction de google pour voir si sa marche apres sa poura ptet vous servir pour appeler la page en question avec le texte a traduire et juste recuperer le texte traduit de retour
EDIT: Voila j'ai fait une petite fonction qui permet asser facilement de recuperer le resultat d'une traduction google et uniquement sous forme de texte
<?php
/* Fonction qui recupere le HTML du resultat de la traduction google, par MrFredo
- $text -> texte a traduire
- $langText -> langue du texte qu'on veux traduire
- $langTranslate -> langue dans laquel on veux traduire le texte
Cette fonction renvoi la traduction du texte
*/
function getTextTranslate($text,$langText, $langTranslate)
{
$file=fopen('http://translate.google.com/translate_t?text='.urlencode($text).'&sl='.$langText.'&tl='.$langTranslate,'r');
if(!$file)
{
echo 'Impossible d\'ouvrir le fichier';
exit();
}
while(!feof($file))
{
$line .= fgets($file,1024);
}
fclose($file);
preg_match('/\<div id=result_box dir="ltr">(.*)\<\/div>/Ui',$line,$texteRetour);
$texteRetour = $texteRetour[0];
$texteRetour = ereg_replace('<div id=result_box dir="ltr">',"",$texteRetour);
$texteRetour = ereg_replace('</div>',"",$texteRetour);
return trim($texteRetour);
}
//Demonstration
echo getTextTranslate('Petit test','fr','en');
Apres suffit d'ajouter la recuperation des 3 variable (texte,langue de depart, langue de retour) via l'url c'est pas bien compliqué :) apres vous heberger la page via pawn par je sais pas quel moyen vous envoyer une requete vers l'url de votre page qui traduira vous en recuperer le resultat et hop le tour est joué
EDIT: J'ai fini un petit FS qui traduit via google un texte qu'on lui donne dans une commande j'le paufine et j'le met en DL :)
Je joint une image pour vous montrer que sa fonctione :p
-
sur le site de dracoblue y a un tuto pour ca je l ai vu y a longtemps, pour recuperer tout sur google translator
-
salut,
Mr_Freedo sa marche dans lotre sens?
-
AH bas je prefere faire passer la traduction par un site que de tout refaire les mots ect ... c'est beaucoup plus simple je pensse non ?? ... A vous de me dire sa serai bien d'avoir un traducteur ... Merci ... car moi mon idee j'avoue sa prendra bien plus de 3 mois environs ... Merci ... De vouloir aider a creer un Traducteur pour samp en plus on pourra parler à tout le monde au anglais comme au francais ... parceque defois tu aimerais savoir se qu'il dise les anglais vous ne penssez pas ... sauf se qui conaisse bien l'anglaisauron pas de probleme mais pour des nuls comme moi sa serait simple ... Merci ...
++TZ++
Double post
MrFredo la tu peut marquer n'impote quoi ?? et sa traduit ?? ... ou faut faire tout les mots aussi si sa traduit tout les mots pas besoin de faire tout les mots ect ... je ve bien savoir comment a tu fais ... Pour que je prend sa pour mettre sur mon server ... et je pensse que lalu'stunt devrais aussi mettre ce si ...
++TZ++
-
Bonjour,
Voilà j'ai utilisé le script, mais j'ai un problème avec l'encodage des accents...
si j'utilise l'url http://translate.google.com/translate_t?text=%22Ils%22+sont+l%E0%2C+partout%2C+n%27importe+o%F9%2C+par+n%27importe+quel+temps+%21&sl=fr&tl=en (http://translate.google.com/translate_t?text=%22Ils%22+sont+l%E0%2C+partout%2C+n%27importe+o%F9%2C+par+n%27importe+quel+temps+%21&sl=fr&tl=en) tout est parfait, par contre si je l'utilise via le script la chaîne est envoyée en utf-8 non encodée et du coup le traducteur plante.
par ailleurs, il semble plus facile d'utiliser trim($texteRetour[1])
puisque le résultat renvoie un tableau de 2 "objets", cela évite les ereg....
Donc si vous avez une piste pour les accents...
merci
Laurent
-
Tu peux utiliser cette fonction (faite par yom pour son FS "google translate") :
#if !defined MAX_URL_SIZE
#define MAX_URL_SIZE 0x400
#endif
stock EncodeAsURL(str[], dest[], size = sizeof dest)
{
new
len = strlen(str),
pos = -1,
tmppos = 1,
chr
;
if (len > size)
return str;
while (++pos < len)
{
chr = str[pos];
if (chr == ' ')
{
strcat(dest, "+", size);
//dest[tmppos] = '+';
tmppos ++;
}
else if ( 'A' <= chr <= 'Z' || 'a' <= chr <= 'z' || '0' <= chr <= '9'
|| chr == ''' || chr == '-' || chr == '_' || chr == '.' || chr == '!'
|| chr == '~' || chr == '*' || chr == '(' || chr == ')' )
format(dest, tmppos ++, "%s%c", dest, chr);
//dest[tmppos++] = chr;
else if (chr < 0x0080)
format(dest, tmppos += 3, "%s%%%x", dest, chr);
else if (chr < 0x0800)
format(dest, tmppos += 6, "%s%%%x%%%x", dest, 0xC0 | chr >> 6, 0x80 | chr & 0x3F);
else
format(dest, tmppos += 9, "%s%%%x%%%x%%%x", dest, 0xE0 | chr >> 12, 0x80 | chr >> 6 & 0x3F , 0x80 | chr & 0x3F);
}
//dest[tmppos] = '\0';
return dest;
}
-
Salut,
il ne faut pas oublier que l'application d'un tel script ne garanti pas la communication entre les anglais et français, certains mots, pour ne pas dire la plupart, sont écrit avec des erreurs par les joueurs donc non identifiable pour le traducteur
++Sim++
-
Merci de vos réponses.
En fait ce n'est pas pour le jeu que cela m'intéresse mais pour une application web (je sais que ce n'est pas trop l'endroit, mais le script php est bon).
Je ne peux donc rien faire avec le script de hardcoder... Malheureusement.
merci quand même, je reste à l'écoute, au cas où...
Laurent
-
url_encode en PHP si tu veux encodé des parametre a transmetre dans une url ;)
-
Oui merci, c'est ce que j'ai fait, comme indiqué dans le script, mais cela ne passe pas via le formulaire, alors que c'est bon via l'url directement...