ISpeechVoiceStatus LastBookmarkId Property (Microsoft Speech Platform)

Microsoft Speech Platform SDK 11

Microsoft Speech Platform

Interface: ISpeechVoiceStatus

LastBookmarkId Property

The LastBookmarkId property retrieves the ID of the last bookmark encountered by the text-to-speech (TTS) engine.

The text value of a bookmark is enclosed in an XML attribute called Mark. The bookmark ID consists of the numeric integer value of the leading characters of the bookmark text. For example, in a bookmark with text "17.53.01 Section 53," the bookmark ID would be "17." A bookmark with text that begins with a non-numeric character will always have a bookmark ID of zero.


Syntax

Set: (This property is read-only)
Get: Long = ISpeechVoiceStatus.LastBookmarkId

Parts

ISpeechVoiceStatus
The owning object.
Long
Set: (This property is read-only)
Get: A Long variable returning the ID of the last bookmark.

Example

The following Visual Basic form code demonstrates the use of the LastBookmark and LastBookmarkId properties. To run this code, create a form without any controls and paste the code into the form's Declarations section.

The code creates a voice that speaks a text stream containing two bookmarks, and then calls the Status method to get an ISpeechVoiceStatus object. The code then shows how these two properties return the bookmark text and display the format of the bookmark.


Option Explicit

Private Sub Form_Load()
    On Error GoTo EH

    Dim objVOICE As SpeechLib.SpVoice
    Dim objSTATUS As SpeechLib.ISpeechVoiceStatus

    Set objVOICE = New SpVoice

    objVOICE.Speak "<BOOKMARK MARK='1. Monday'/> monday " _
            & "<bookmark mark='2. Tuesday'/> tuesday ", SVSFIsXML

    Set objSTATUS = objVOICE.Status

    MsgBox "LastBookmark is " & objSTATUS.LastBookmark      ' "2. Tuesday"
    MsgBox "LastBookmarkId is " & objSTATUS.LastBookmarkId  ' "2"
	End

EH:
    If Err.Number Then ShowErrMsg
End Sub

Private Sub ShowErrMsg()

    ' Declare identifiers:
    Dim T As String

    T = "Desc: " & Err.Description & vbNewLine
    T = T & "Err #: " & Err.Number
    MsgBox T, vbExclamation, "Run-Time Error"
    End

End Sub