2010-09-09 31 views
0

編程設置OPT鑑於其可以被加載到MS SAPI 5.1以下:如何與MS SAPI

<GRAMMAR LANGID="409"> 
    <RULE NAME="top rule" TOPLEVEL="ACTIVE"> 
     <OPT>hello</OPT> 
     <P>my name is fred</P> 
    </RULE> 
</GRAMMAR> 

如何可以做編程相同的,特別是關於所述任選的要素。

我猜想它是在這裏完成:

state.AddWordTransition(nextState, "hello", " ", SpeechGrammarWordType.SGLexical, s, id, ref propValue, 1F); 

...這可能是propValue。但是語法是什麼(例如,propValue =「OPT = true」 - 當然不起作用)

謝謝!

回答

0

可選字需要的ε(空)過渡到下一個狀態,所以加:

state.AddWordTransition(nextState, NULL, NULL, SpeechGrammarWordType.SGLexical, s, id, ref propValue, 1F); 

添加小量過渡。

+0

我無法在MS文檔中找到該文檔。 – tom 2010-09-15 08:33:10

+0

非常感謝! – tom 2010-09-15 08:41:48

+0

這是語句中隱含的一種'如果psz爲NULL,則會添加一個epsilon弧線。' – 2010-09-15 16:51:53