Edit

Share via


DisplayAttributes Enum

Definition

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

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.

[System.Flags]
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

Product Versions
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)

See also