PromptBuilder.AppendTextWithPronunciation(String, String) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Lägger till text i PromptBuilder objektet och anger uttalet för texten.
public:
void AppendTextWithPronunciation(System::String ^ textToSpeak, System::String ^ pronunciation);
public void AppendTextWithPronunciation(string textToSpeak, string pronunciation);
member this.AppendTextWithPronunciation : string * string -> unit
Public Sub AppendTextWithPronunciation (textToSpeak As String, pronunciation As String)
Parametrar
- textToSpeak
- String
En sträng som innehåller ordets skrivna form med hjälp av det konventionella alfabetet för ett språk.
- pronunciation
- String
En sträng som innehåller telefoner som ska talas från IPA (International Phonetic Alphabet).
Exempel
I följande exempel initieras en ny instans av PromptBuilder klassen. Den lägger sedan till textsträngen "Mitt namn är" i instansen. Slutligen lägger den till en sträng som innehåller rätt namn "DuBois" och anger uttalet av namnet.
public void ProperName()
{
PromptBuilder builder = new PromptBuilder();
builder.AppendText("My name is");
// Add a proper name and its pronunciation.
builder.AppendTextWithPronunciation("DuBois", "duˈbwɑ");
}
Följande markering visar den SSML som det här PromptBuilder objektet genererar.
<speak xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-us">
My name is <phoneme ph="duˈbwɑ"> DuBois </phoneme>
</speak>
Kommentarer
Syntetiserar innehållet i parametern pronunciation , inte innehållet i parametern textToSpeak .
Uttal som anges infogade i prompter gäller endast för den enskilda förekomsten av ett ord och åsidosätter uttal av talmotorn eller något av dess aktiva lexikon. Vanligtvis använder du infogade uttal för anpassade uttal av befintliga ord eller för uttal av ovanliga ord, till exempel rätt namn, som talsyntesmotorn kanske inte uttalar så bra som förväntat.
Infogade uttal måste anges med telefoner från IPA (International Phonetic Alphabet). En telefon är en bokstav eller ett tecken som representerar ett diskret talljud. Talmotorer som uppfyller SSML-version 1.0-specifikationen (Speech Synthesis Markup Language) uttalar telefoner från IPA. Information om hur du anger infogade uttal med andra fonetiska alfabet finns AppendSsmlMarkupi .
IPA publicerar ett diagram som visar sina telefoner och mappar dem till Unicode-nummer.
Vissa telefoner i IPA-alfabetet har samma representationer som bokstäver i det latinska alfabetet. I dessa fall är det möjligt att skriva det latinska tecknet och ha rätt representation för en telefon. Eftersom de latinska tecknen som ofta används i text kan representera flera telefoner i IPA-telefonuppsättningen, kanske det inte leder till exakt önskad IPA-telefon genom att skriva det latinska tecknet. Andra telefoner i IPA-alfabetet måste representeras i kod som teckenreferenser som består av ett et-tecken (&), nummertecknet (#) och ett Unicode-nummer för den önskade telefonen i hexadecimalt eller decimaltal, allt följt av ett semikolon (;). Till exempel skulle en schwa (ə) representeras av ə.
Om du vill lägga till nya eller anpassade uttal för flera ord, till exempel för att uttrycka regionala dialekter eller lägga till lämpliga namn eller ordförråd som är specifika för ett utbildnings- eller medicinskt område, skapar du ett lexikon och lägger till det med SpeechSynthesizer hjälp av AddLexicon.