Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Restituisce l'insieme RecognitionAlternates da un intervallo all'interno della stringa di risultato migliore dell'oggetto RecognitionResult, in modo che ogni oggetto RecognitionAlternate nell'insieme corrisponda a un solo segmento di input penna. L'insieme restituito non può superare i 10 elementi.
Spazio dei nomi: Microsoft.Ink
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
Sintassi
'Dichiarazione
Public Function GetAlternatesFromSelection ( _
selectionStart As Integer, _
selectionLength As Integer _
) As RecognitionAlternates
'Utilizzo
Dim instance As RecognitionResult
Dim selectionStart As Integer
Dim selectionLength As Integer
Dim returnValue As RecognitionAlternates
returnValue = instance.GetAlternatesFromSelection(selectionStart, _
selectionLength)
public RecognitionAlternates GetAlternatesFromSelection(
int selectionStart,
int selectionLength
)
public:
RecognitionAlternates^ GetAlternatesFromSelection(
int selectionStart,
int selectionLength
)
public RecognitionAlternates GetAlternatesFromSelection(
int selectionStart,
int selectionLength
)
public function GetAlternatesFromSelection(
selectionStart : int,
selectionLength : int
) : RecognitionAlternates
Parametri
- selectionStart
Tipo: System.Int32
Inizio della selezione di testo da cui viene restituito l'insieme RecognitionAlternates. Il valore predefinito è 0 (zero).
- selectionLength
Tipo: System.Int32
Lunghezza della selezione di testo da cui viene restituito l'insieme RecognitionAlternates. Il valore predefinito è –1 che specifica l'inizio del testo dall'inizio della selezione alla fine della stringa.
Valore restituito
Tipo: Microsoft.Ink.RecognitionAlternates
Restituisce l'insieme RecognitionAlternates da una selezione all'interno della stringa di risultato migliore dell'oggetto RecognitionResult, in modo che ogni oggetto RecognitionAlternate nell'insieme corrisponda a un solo segmento di input penna.
Note
È probabile che un riconoscimento divida "how are you" in tre segmenti, a seconda della spaziatura tra i segmenti, uno per parola. Chiamare il metodo GetAlternatesFromSelection per restituire le alternative per un solo segmento di questa selezione.
Si noti la differenza tra il metodo GetAlternatesFromSelection e i metodi AlternatesWithConstantPropertyValues, LineAlternates e ConfidenceAlternates dell'oggetto RecognitionAlternate. Sebbene il metodo GetAlternatesFromSelection restituisca un insieme RecognitionAlternates in cui ogni oggetto RecognitionAlternate corrisponde a un solo segmento di input penna all'interno di una selezione, i metodi AlternatesWithConstantPropertyValues, LineAlternates e ConfidenceAlternates restituiscono l'insieme RecognitionAlternates in cui gli oggetti RecognitionAlternate corrispondono a ogni segmento di input penna all'interno di una selezione.
Esempi
In questo esempio il riconoscimento sincrono viene gestito in risposta a un'azione dell'utente, ad esempio il clic su una voce di menu o su un pulsante. Innanzitutto, l'insieme Strokes di un oggetto RecognizerContext viene assegnato dall'insieme Strokes associato a un oggetto InkOverlay e viene verificato il conteggio dei tratti. Se l'insieme Strokes contiene almeno un oggetto Stroke, il processo di riconoscimento inizia con una chiamata al metodo Recognize. Se il riconoscimento ha esito positivo, viene ottenuto un insieme RecognitionAlternates per la prima parola del risultato del riconoscimento (se nella proprietà TopString viene trovata più di una parola) o per l'intero risultato del riconoscimento. Infine, vengono visualizzati gli oggetti RecognitionAlternates aggiungendoli a una casella di riepilogo.
' assign strokes collection from the collected strokes
Me.mRecognizerContext.Strokes = Me.mInkOverlay.Ink.Strokes
' check stroke count. Recognize() will throw exception if no strokes
If Me.mRecognizerContext.Strokes.Count > 0 Then
Dim status As RecognitionStatus
' perform the recognition
Dim rResult As RecognitionResult = Me.mRecognizerContext.Recognize(status)
' check status
If RecognitionStatus.NoError = status Then
Dim rAlts As RecognitionAlternates
' find the index of the first space in the top string
Dim idxOfSpace As Integer = rResult.TopString.IndexOf(" ")
If idxOfSpace <> -1 Then
' if we have a space (i.e. more than one word)
' get the alternates of the first segment (the first word)
rAlts = rResult.GetAlternatesFromSelection(0, idxOfSpace)
Else
' otherwise, get the alternates for the entire recognition result
rAlts = rResult.GetAlternatesFromSelection()
' Note: if (idxOfSpace <> -1) .. for illustrative purposes
' Could have uncondionally used:
' rAlts = rResult.GetAlternatesFromSelection(0, idxOfSpace)
' because:
' GetAlternatesFromSelection(0, -1)
' is the same as:
' GetAlternatesFromSelection()
End If
' display the alternates
For Each RA As RecognitionAlternate In rAlts
listBoxRecognitionResults.Items.Add(RA.ToString())
Next
End If
End If
// assign strokes collection from the collected strokes
this.mRecognizerContext.Strokes = this.mInkOverlay.Ink.Strokes;
// check stroke count. Recognize() will throw exception if no strokes
if (this.mRecognizerContext.Strokes.Count > 0)
{
RecognitionStatus status;
// perform the recognition
RecognitionResult rResult = this.mRecognizerContext.Recognize(out status);
// check status
if (RecognitionStatus.NoError == status)
{
RecognitionAlternates rAlts;
// find the index of the first space in the top string
int idxOfSpace = rResult.TopString.IndexOf(" ");
if (idxOfSpace != -1)
{
// if we have a space (i.e. more than one word)
// get the alternates of the first segment (the first word)
rAlts = rResult.GetAlternatesFromSelection(0, idxOfSpace);
}
else
{
// otherwise, get the alternates for the entire recognition result
rAlts = rResult.GetAlternatesFromSelection();
// Note: if (idxOfSpace != -1) .. for illustrative purposes
// Could have uncondionally used:
// rAlts = rResult.GetAlternatesFromSelection(0, idxOfSpace);
// because:
// GetAlternatesFromSelection(0, -1)
// is the same as:
// GetAlternatesFromSelection()
}
// display the alternates
foreach (RecognitionAlternate RA in rAlts)
{
listBoxRecognitionResults.Items.Add(RA.ToString());
}
}
}
Piattaforme
Windows Vista
.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Informazioni sulla versione
.NET Framework
Supportato in: 3.0