t98907
t98907

Reputation: 2442

How to get the results of language identification by Outlook

When the translation function is enabled in Outlook, I was wondering if anyone knows how to get the results of language identification of the email body.

As shown in the figure below, Outlook has a "Translate" button in the "Language" group by default, and Microsoft offers Microsoft Machine Translation in Outlook. This is designed to detect and translate the language of the body of an email. In other words, there should be information about what language the body of the e-mail is presumed to be written in.

enter image description here

Thanks,

Upvotes: 0

Views: 241

Answers (2)

Dmitry Streblechenko
Dmitry Streblechenko

Reputation: 66255

You can try to use IMultilanguage2 interface and its DetectInputCodepage method - it returns a ranked list of all locale matches.

Upvotes: 0

Eugene Astafiev
Eugene Astafiev

Reputation: 49405

There is no trivial to get add-in results if you don't know any public property or method for that. Try to contact add-in developers to provide public members that can be called from other add-ins.

Note, you can use the Word object model to detect the message body language. The WordEditor property of the Inspector class returns an instance of the Document class from the Word object model. So, you can use the Document instance in the following way:

With WordDocumentInstance 
 If .LanguageDetected = True Then 
 x = MsgBox("This document has already " _ 
 & "been checked. Do you want to check " _ 
 & "it again?", vbYesNo) 
 If x = vbYes Then 
 .LanguageDetected = False 
 .DetectLanguage 
 End If 
 Else 
 .DetectLanguage 
 End If 
 If .Range.LanguageID = wdEnglishUS Then 
 MsgBox "This is a U.S. English document." 
 Else 
 MsgBox "This is not a U.S. English document." 
 End If 
End With

The results of the DetectLanguage method are stored in the LanguageID property on a character-by-character basis. To read the LanguageID property, you must first specify a selection or range of text.

When applied to a Document object, the DetectLanguage method checks all available text in the document (headers, footers, text boxes, and so forth). If the specified text contains a partial sentence, the selection or range is extended to the end of the sentence.

If the DetectLanguage method has already been applied to the specified text, the LanguageDetected property is set to True. To reevaluate the language of the specified text, you must first set the LanguageDetected property to False.

Upvotes: 1

Related Questions