Share via


DisplayAttributes Enum

Definition

Lists the options that the SpeechRecognitionEngine object can use to specify white space for the display of a word or punctuation mark.

This enumeration supports a bitwise combination of its member values.

public enum class DisplayAttributes
[System.Flags]
public enum DisplayAttributes
[<System.Flags>]
type DisplayAttributes = 
Public Enum DisplayAttributes
Inheritance
DisplayAttributes
Attributes

Fields

Name Value Description
None 0

The item does not specify how white space is handled.

ZeroTrailingSpaces 2

The item has no spaces following it.

OneTrailingSpace 4

The item has one space following it.

TwoTrailingSpaces 8

The item has two spaces following it.

ConsumeLeadingSpaces 16

The item has no spaces preceding it.

Examples

The following example uses the DisplayAttributes property of a list of RecognizedWordUnit objects to format the words as a phrase.

// Use the DisplayAttributes property to format speech as text.   

static string GetDisplayText(List<RecognizedWordUnit> words)  
{  
  StringBuilder sb = new StringBuilder();  

  // Concatenate the word units together. Use the DisplayAttributes  
  // property of each word unit to add or remove white space around  
  // the word unit.  
  foreach (RecognizedWordUnit word in words)  
  {  
    if ((word.DisplayAttributes  
      & DisplayAttributes.ConsumeLeadingSpaces) != 0))  
    {  
      sb = new StringBuilder(sb.ToString().TrimEnd());  
    }  

    sb.Append(word.Text);  

    if ((word.DisplayAttributes  
      & DisplayAttributes.OneTrailingSpace) != 0)  
    {  
      sb.Append(" ");  
    }  
    else if ((word.DisplayAttributes  
      & DisplayAttributes.TwoTrailingSpaces) != 0)  
    {  
      sb.Append("  ");  
    }  
  }  

  return sb.ToString();  
}  

Remarks

Windows Desktop Speech returns recognized phrases as collections of RecognizedWordUnit or ReplacementText objects. Each object corresponds to a single word or punctuation mark. The DisplayAttributes property of a RecognizedWordUnit or ReplacementText uses a member of the DisplayAttributes enumeration to describe how print spacing is handled around a given word or punctuation mark.

Two or more members of the DisplayAttributes enumeration may be combined by a bit-wise OR to specify how a particular word should be displayed.

Note

The display formatting that the speech recognizer uses is language specific.

For example, suppose the input phrase to a recognition engine using the default system grammar provided by DictationGrammar is "Hello comma he said period". Then the recognition engine returns a RecognizedPhrase containing five RecognizedWordUnit objects containing the following strings with the following DisplayAttributes values.

Item DisplayAttributes
Hello OneTrailingSpace
, OneTrailingSpace | ConsumeLeadingSpaces
he OneTrailingSpace
said OneTrailingSpace
. OneTrailingSpace | ConsumeLeadingSpaces

The text returned for this recognized phrase is printed as: "Hello, he said."

Applies to

See also