SpeechSynthesizer.AddLexicon(Uri, String) Metoda
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje leksykon do SpeechSynthesizer obiektu.
public:
void AddLexicon(Uri ^ uri, System::String ^ mediaType);
public void AddLexicon(Uri uri, string mediaType);
member this.AddLexicon : Uri * string -> unit
Public Sub AddLexicon (uri As Uri, mediaType As String)
- uri
- Uri
Lokalizacja informacji leksykonu.
- mediaType
- String
Typ nośnika leksykonu. W wartościach typu nośnika nie jest uwzględniana wielkość liter.
W poniższym przykładzie pokazano efekt dodawania i usuwania leksykonu zawierającego niestandardową wymowę słowa "niebieski". Leksykon definiuje wymowę "niebieski", aby brzmieć jak "bleep". Podczas ładowania leksykonu syntezator mowy używa wymowy zdefiniowanej w leksykonie.
using System;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
using (SpeechSynthesizer synth = new SpeechSynthesizer())
{
// Configure the audio output.
synth.SetOutputToDefaultAudioDevice();
// Speak the prompt.
synth.Speak("My favorite color is blue.");
// Add a lexicon that changes the pronunciation of "blue".
synth.AddLexicon(new Uri("C:\\test\\Blue.pls"), "application/pls+xml");
// Speak the prompt.
synth.Speak("My favorite color is blue.");
// Remove the lexicon.
synth.RemoveLexicon(new Uri("C:\\test\\Blue.pls"));
// Speak the prompt.
synth.Speak("My favorite color is blue.");
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Poniżej przedstawiono zawartość pliku leksykonu Blue.pls:
<?xml version="1.0" encoding="UTF-8"?>
<lexicon version="1.0"
xmlns="http://www.w3.org/2005/01/pronunciation-lexicon"
alphabet="x-microsoft-ups" xml:lang="en-US">
<lexeme>
<grapheme> blue </grapheme>
<phoneme> B L I P </phoneme>
</lexeme>
</lexicon>
Leksykon wymowy jest kolekcją słów lub fraz wraz z ich wymową, która składa się z liter i znaków z obsługiwanego alfabetu fonetycznego. Leksykon umożliwia określenie wymowy niestandardowej dla specjalistycznego słownictwa w aplikacji.
Wymowa określona w zewnętrznym pliku leksykonu ma pierwszeństwo przed wymową wewnętrznego leksykonu lub słownika syntezatora mowy. Jednak wymowa określona w tekście w monitach utworzonych przy użyciu dowolnej z AppendTextWithPronunciationmetod , AppendSsmlMarkuplub AppendSsml ma pierwszeństwo przed wymową określoną w dowolnym leksykonie. Wymowa śródliniowa ma zastosowanie tylko do pojedynczego wystąpienia słowa. Aby uzyskać więcej informacji, zobacz Leksykony i Alfabety fonetyczne .
Do obiektu można dodać SpeechSynthesizer wiele leksykonów. Dla parametru mediaType
są obecnie obsługiwane dwie wartości:
Wartość
application/pls+xml
wskazuje, że leksykon jest zgodny ze specyfikacją leksykonu wymowy (PLS) w wersji 1.0. Jest to preferowany format do użycia.Wartość
application/vdn.ms-sapi-lex
wskazuje, że format leksykonu to Nieskompresowany leksykon, który jest zastrzeżonym formatem firmy Microsoft. Jest to starszy format i zalecamy użycie opisanego powyżej formatu PLS.
Produkt | Wersje |
---|---|
.NET | 8 (package-provided), 9 (package-provided), 10 (package-provided) |
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0 (package-provided) |
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: