C H A P T E R 9
Recognition
About the Recognition System
9-7
recognizer's letter-by-letter option may produce different results than using the
printed recognizer (which always provides letter-by-letter recognition.) Options
for both recognizers are described throughout this chapter and in Chapter 10,
"Recognition: Advanced Topics."
Unrecognized Strokes
9
If the input strokes are not recognized, the system encapsulates them in an object
known as a stroke bundle. A stroke bundle is a NewtonScript object that
encapsulates stroke data for multiple strokes. The strokes in the bundle have been
grouped by the system according to temporal and spatial data gathered when the
user first entered them on the screen. You can access the information in stroke
bundles to provide your own form of deferred recognition, or to examine or modify
stroke data before it is recognized. For information on using stroke bundles, see
Chapter 10, "Recognition: Advanced Topics."
Stroke bundles may be returned to the view under any of the following circumstances:
No recognizers are enabled for the view.
Recognizers are enabled for the view but recognition fails.
The view is configured to image input as ink text.
The view's
vStrokesAllowed
flag is set and a
ViewStrokeScript
method
is provided.
When the system passes a stroke bundle to a
clEditView
view, the view images
the strokes in the bundle as ink text or sketch ink. Other kinds of views may require
you to provide code that displays the strokes.
When no recognizers are enabled for a
clEditView
view, it displays input as
sketch ink. Input views for which no recognizers are enabled are not as unusual as
they might seem at first; for example, you might provide a view that accepts stroke
input without performing recognition as a means of capturing the user's handwritten
signature. And some views, such as those used in the built-in Notepad application,
allow the user to enable and disable recognizers at will.
When recognizers are enabled for the view but recognition fails, the view may
return ink text or sketch ink. Recognition may fail if input strokes are too sloppy to
classify or if the view is not configured correctly for the intended input. For more
information, see "Recognition Failure" beginning on page 9-11.
When the view is configured to display input as ink text, the system skips the
remainder of the recognition process--it does not attempt to further classify the input
strokes as letters or words. Instead, the view simply images the strokes as ink text.
The most important difference between ink text and sketch ink has to do with how
these two forms of ink are represented. Ink text is inserted into existing text in
paragraph views in the same way as recognized words are: as the contents of a