Поделиться через


PromptBuilder.AppendTextWithPronunciation(String, String) Метод

Определение

Добавляет текст в объект PromptBuilder и указывает произношение текста.

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)

Параметры

textToSpeak
String

Строка, содержащая форму слова, записанную традиционными для соответствующего языка знаками алфавита.

pronunciation
String

Строка, содержащая звуки из Международного фонетического алфавита (IPA), которые необходимо произнести.

Примеры

В следующем примере инициализируется новый экземпляр PromptBuilder класса . Затем к экземпляру добавляется текстовая строка "My name is". Наконец, он добавляет строку, содержащую правильное имя "DuBois", и задает произношение имени.

public void ProperName()  
{  
    PromptBuilder builder = new PromptBuilder();  
    builder.AppendText("My name is");  

    // Add a proper name and its pronunciation.  
    builder.AppendTextWithPronunciation("DuBois", "duˈbwɑ");     
}  

В следующей разметке показан SSML, создаваемый этим PromptBuilder объектом.

<speak xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-us">  
  My name is <phoneme ph="duˈbwɑ"> DuBois </phoneme>  
</speak>  

Комментарии

Синтезатор произносит содержимое pronunciation параметра, а не содержимое textToSpeak параметра.

Произношение, указанное в запросах, применяется только к отдельному вхождении слова и переопределяет произношение речевой подсистемы или любого из его текущих активных лексиконов. Как правило, встроенные произношения используются для пользовательского произношения существующих слов или для произношения необычных слов, таких как имена собственные, которые подсистема синтеза речи может произносить не так, как ожидалось.

Встроенные произношения должны указываться с помощью телефонов из международного фонетического алфавита (IPA). Телефон — это буква или символ, представляющий сдержанный звук речи. Подсистемы речи, соответствующие спецификации языка разметки синтеза речи (SSML) версии 1.0 , будут произносить телефоны из IPA. Сведения о том, как указать встроенные произношения с помощью других фонетических алфавитов, см. в разделе AppendSsmlMarkup.

IPA публикует диаграмму со списком своих телефонов и сопоставляет их с номерами Юникода.

Некоторые телефоны в алфавите IPA имеют те же представления, что и буквы в латинском алфавите. В таких случаях можно ввести латинский символ и получить правильное представление для телефона. Так как латинские символы, которые обычно используются в тексте, могут представлять несколько телефонов набора телефонов IPA, простое ввод латинского символа может не привести к точному телефону IPA. Другие телефоны алфавита IPA должны быть представлены в коде в виде символьных ссылок, состоящих из амперсанда (&), числового знака (#) и номера Юникода для нужного телефона в шестнадцатеричном или десятичном формате, за которым следует точка с запятой (;). Например, schwa (ə) будет представлена &#x0259;.

Чтобы добавить новое или пользовательское произношение для нескольких слов, например для выражения региональных диалектов или добавления собственных имен или словарей, относящихся к учебной или медицинской дисциплине, создайте словарь и добавьте его в SpeechSynthesizer с помощью AddLexicon.

Применяется к

См. также раздел