public static void SDUsageSample() { try { MappingService scriptDetection = new MappingService( MappingAvailableServices.ScriptDetection); using (MappingPropertyBag bag = scriptDetection.RecognizeText("This is English. АБВГД.", null)) { MappingDataRange[] ranges = bag.GetResultRanges(); Console.WriteLine("Recognized {0} script ranges", ranges.Length); NullTerminatedStringFormatter formatter = new NullTerminatedStringFormatter(); foreach (MappingDataRange range in ranges) { Console.WriteLine("Range from {0} to {1}, script {2}", range.StartIndex, range.EndIndex, range.FormatData(formatter)); } } } catch (LinguisticException exc) { Console.WriteLine("Error calling ELS: {0}, HResult: {1}", exc.ResultState.ErrorMessage, exc.ResultState.HResult); } }
public static void LADUsageSample() { try { MappingService languageDetection = new MappingService( MappingAvailableServices.LanguageDetection); using (MappingPropertyBag bag = languageDetection.RecognizeText("This is English", null)) { string[] languages = bag.GetResultRanges()[0].FormatData( new StringArrayFormatter()); foreach (string language in languages) { Console.WriteLine("Recognized language: {0}", language); } } } catch (LinguisticException exc) { Console.WriteLine("Error calling ELS: {0}, HResult: {1}", exc.ResultState.ErrorMessage, exc.ResultState.HResult); } }
private string LanguageConverter(Guid serviceGuid, string sourceContent) { string transliterated = null; if ((sourceContent != null) && (sourceContent.Length > 0)) { try { MappingService mapService = new MappingService(serviceGuid); using (MappingPropertyBag bag = mapService.RecognizeText(sourceContent, null)) { transliterated = bag.GetResultRanges()[0].FormatData(new StringFormatter()); } } catch (LinguisticException exc) { ShowErrorMessage(String.Format("Error calling ELS: {0}, HResult: {1}", exc.ResultState.ErrorMessage, exc.ResultState.HResult)); } } return transliterated; }
public static void CyrlToLatinTransUsageSample1() { try { MappingService cyrlToLatin = new MappingService( MappingAvailableServices.TransliterationCyrillicToLatin); using (MappingPropertyBag bag = cyrlToLatin.RecognizeText("АБВГД.", null)) { string transliterated = bag.GetResultRanges()[0].FormatData(new StringFormatter()); Console.WriteLine("Transliterated text: {0}", transliterated); } } catch (LinguisticException exc) { Console.WriteLine("Error calling ELS: {0}, HResult: {1}", exc.ResultState.ErrorMessage, exc.ResultState.HResult); } }
[InlineData("TransliterationCyrillicToLatin", "добро hello утро!", 1, 0, 16)] // BUG: possible bug here -- this should be 2 ranges public void RecognizeText( string service, string text, int expNumberOfDataRanges, int expStartIndexOfFirstDataRange, int expEndIndexOfFirstDataRange) { MappingService s = new MappingService(ServiceGuidFromServiceString(service)); MappingPropertyBag b = s.RecognizeText(text, null); MappingDataRange[] rs = b.GetResultRanges(); Assert.Equal<int>(expNumberOfDataRanges, rs.Length); Assert.Equal<int>(expStartIndexOfFirstDataRange, rs[0].StartIndex); Assert.Equal<int>(expEndIndexOfFirstDataRange, rs[0].EndIndex); Assert.Equal<string>("text/plain", rs[0].ContentType); // Win7 ELS services support only "text/plain" as content type }