Ya
Kipow lo analizó, yo sólo les pongo un ejemplito listo para ejecutar. La función que usa es un poco artesanal:
Código Delphi
[-]
function GoogleTranslate(SourceLanguage, TargetLanguage, Text: String): String;
const
GoogleUrl = 'http://translate.google.com.mx/translate_t';
StartTag = '<div id=result_box dir="ltr">';
EndTag = '</div>';
var
IdHTTP: TIdHTTP;
Fields: TStrings;
Response: String;
I: Integer;
begin
IdHTTP := nil;
Fields := nil;
try
IdHTTP := TIdHTTP.Create(nil);
Fields := TStringList.Create;
Fields.Values['sl'] := SourceLanguage;
Fields.Values['tl'] := TargetLanguage;
Fields.Values['text'] := Text;
Response := IdHTTP.Post(GoogleUrl, Fields);
I := Pos(StartTag, Response);
Delete(Response, 1, I + Length(StartTag) - 1);
I := Pos(EndTag, Response);
Response := Copy(Response, 1, I - 1);
Result := Response;
finally
IdHTTP.Free;
Fields.Free;
end;
end;
Quizá sería más adecuado utilizar un analizador del documento HTML. De hecho probé con
éste y funciona bien pero pensé que podíamos hhacerlo con sólo lo estándar.
Ya queda en ustedes generalizar la aplicación de ejemplo para que se puedan escoger los idiomas de la traducción.
// Saludos