免费翻译API的集合(Google Translate,Bing Translator,Microsoft Translator和Yandex.translate)。当前支持翻译,音译,语言检测和文本到语音。
5翻译服务:
支持在随附的翻译器中支持翻译,音译,语言检测和文本到语音的支持。
支持每个翻译器的所有语言。
语言类,该语言类具有获取受支持的语言并确定特定翻译中语言的可用性的方法。
接口,允许编写自定义翻译器和语言。
一个AggregateTranslator类,该类将默认翻译器分组,以便于添加自定义转换器的功能。
通过Nuget安装
或通过命令:
dotnet add package GTranslate
using GTranslate . Translators ;
// Create an instance of the Google Translator
var translator = new GoogleTranslator ( ) ;
// Translate "Hello world" to Spanish (es)
var result = await translator . TranslateAsync ( "Hello world" , "es" ) ;
Console . WriteLine ( result ) ;
// Output:
// Translation: 'Hola Mundo', TargetLanguage: 'Spanish (es)', SourceLanguage: 'English (en)', Service: GoogleTranslator音译类似于翻译,但其工作方式特定于每个翻译器。一些翻译人员仅隐含地支持音译,而另一些则具有专用的音译终点(例如yandex)。
using GTranslate . Translators ;
var translator = new YandexTranslator ( ) ;
// Transliterate "Hello world" (in Russian) into English (latin script)
var result = await translator . Transliterate ( "Привет, мир" , "en" ) ;
Console . WriteLine ( result ) ;
// Output:
// Transliteration: 'privet, mir', TargetLanguage: 'English (en)', SourceLanguage: 'Russian (ru)', Service: YandexTranslator建议使用MicrosoftTranslator进行音译,因为它具有出色的API,可以明确指定源脚本和目标脚本。
Gtranslate提供了一种通过Language类访问语言的简便方法。 Language对象包含英文名称,本地名称,ISO 639-1代码,ISO 639-3代码和支持的服务(翻译引擎)。
要从其ISO 639-1代码中获取Language对象,请使用Language.GetLanguage或Language.TryGetLanguage 。如果找不到Language.GetLanguage会引发异常和Language.TryGetLanguage训练语言只会返回false 。也可以通过其英语/本地名称ISO-6393代码和一些别名(例如zh-Hans或zh-Hant )获得语言。
using GTranslate ;
var french = Language . GetLanguage ( "fr" ) ; // Get the French language
string input = Console . ReadLine ( ) ;
if ( Language . TryGetLanguage ( input , out var language )
{
// Use language from input
} Granslate通过语言词典类LanguageDictionary公开了语言的完整列表,该语言可以通过Language.LanguageDictionary访问。它本质上是ISO 639-1代码及其各自语言的仅阅读词典。
调用TranslateAsync返回从ITranslationResult派生的对象。它包含翻译,文本,服务,源语言和目标语言。
这也适用于TransliterateAsync和ITransliterationResult ,但是音译是存在的而不是翻译。
一些翻译引擎将为其中提供额外的数据。这些额外的数据是通过其混凝土类中的属性公开的。例如,( GoogleTranslator.TranslateAsync )的GoogleTranslationResult有时会提供翻译和音译的信心。