Text-to-Speech via Cloud und OOB sowie WP7-Tastatur mittels Input Scope (Teil 2)
Kommentare

Menü 2 für Experten: Text-to-Speech via OOB
Für Offlineszenarien (Out of Browser, OOB) kann Silverlight 4 mit Elevated Trust auf COM zugreifen. Microsoft hat mit COM (Component Object Model) eine

Menü 2 für Experten: Text-to-Speech via OOB

Für Offlineszenarien (Out of Browser, OOB) kann Silverlight 4 mit Elevated Trust auf COM zugreifen. Microsoft hat mit COM (Component Object Model) eine Schnittstelle für Windows-Anwendungen bereitgestellt. Somit können Fremdanwendungen leichter in eigene Programme eingebunden werden: also zum Beispiel Excel aus Word aufrufen. Ab Windows XP wird eine integrierte Sprachausgabe SAPI.SpVoice via COM von Windows angeboten. Damit können Sprachkommandos, Texterkennungen und letztendlich auch geschriebene Texte vorgelesen werden. Trotz umfangreichen Funktionen ist diese nur unter Windows verwendbar. Als Standard wird auch nur die englische Sprachausgabe angeboten. Für die deutsche Sprache muss ein zusätzliches Sprachpaket heruntergeladen werden. OOB wird in den Projekteigenschaften aktiviert (Abb. 1). Anschließend wird unter OUT OF BROWSER SETTINGS … der Hacken für „Require elevated trust when running outside the browser“ gesetzt (Abb. 2). Um das C#-4.0-Feature Dynamic verwenden zu können, muss dem Projekt nur noch die Microsoft.CSharp.dll referenziert werden. Mittels Dynamic wird der Zugriff auf COM-Objekte erheblich vereinfacht, indem die Typenüberprüfung vom Compiler übergangen wird. Der Zugriff wird in Listing 3 gezeigt.

Listing 3: Sprachausgabe über Windows via COM (SAPI.SpVoice)

private void Button_Click(object sender, RoutedEventArgs e)
{
    if (Application.Current.HasElevatedPermissions && Application.Current.IsRunningOutOfBrowser)
    {
        dynamic textToSpeech = AutomationFactory.CreateObject("Sapi.SpVoice"); 
        textToSpeech.Volume = 100;
        textToSpeech.Speak(tbUserInput.Text);
    }
}  
Abb. 1: Out of Browser aktivieren
Abb. 1: Out of Browser aktivieren
Abb. 2: Elevated Trust für OOB aktivieren
Abb. 2: Elevated Trust für OOB aktivieren
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -