Microsoft Agent 語音輸出標記

[從 Windows 7 開始,Microsoft Agent 已被取代,而且在後續版本的 Windows 中可能無法使用。]

Microsoft Agent 服務支援透過在語音文字字串中插入的特殊標記來修改語音輸出。 這些標記可協助您變更字元輸出運算式的特性。

語音輸出標籤使用下列語法規則:

  • 所有標記都會以反斜線字元開頭和結尾 (\) 。
  • 標籤內未啟用單一反斜線字元。 若要在標記的 text 參數中包含反斜線字元,請使用雙反斜線 (\\) 。
  • 標記不區分大小寫。 例如,\pit\ 與 \PIT\ 相同。
  • 標籤與空白字元相依。 例如,\Rst\ 與 \ Rst \ 不同。

除非另一個標記另有指定或修改,否則語音輸出會保留單一 Speak 方法所指定文字內的 標記所設定的特性。 語音輸出會在 Speak 方法完成之後,透過使用者定義的參數自動重設。

某些標籤包含引號字串。 對於某些程式設計語言,例如 Visual Basic Scripting Edition (VBScript) 和 Visual Basic,這表示您可能必須使用兩個引號來指定標記的參數,或串連雙引號字元做為字串的一部分。 後者會顯示在此 Visual Basic 範例中:

Agent1.Characters("Genie").Speak "This is \map=" + chr(34) + "Spoken text" _
+ chr(34) + "=" + chr(34) + "Balloon text" + chr(34) + "\."

針對 C、C++ 和 JAVA™ 程式設計,請在反斜線和雙引號前面加上反斜線。 例如:

BSTR bszSpeak = SysAllocString(L"This is \\map=\"Spoken text\"=\"Balloon text\"\\");

pCharacter->Speak(bszSpeak, ......);

對於支援雙位元組字元集 (DBCS) 字元的其他語言,您可以使用雙位元組字元來指定字串參數。 不過,針對用來定義標記的其他所有參數和字元使用單一位元組字元,包括標籤本身。

支援的標記如下:

標記主要是設計來調整文字轉換語音 (TTS) 產生的輸出。 只有 MrkMap 標籤可以搭配聲音檔案型語音輸出使用。

注意

Microsoft Agent 不支援 Microsoft 語音 SDK 中記載的所有標記。 參數可能也會根據選取的 TTS 引擎而有所不同。 您可以使用 TTSModeID來設定特定的 TTS 引擎。