Typically the most time-consuming processes invoked by the Recognition engine are the recognition processes (RECOGNITION1, RECOGNITION2, and RECOGNITION3), and the final output document generation (WRITEFOUTDOC). In some particular cases, other processes like image loading (IMGINPUT) or image preprocessing (IMGPREPROCESS) might also take considerable time.
Sometimes it is advisable to provide the application user with feedback about these processes. The application can register an event handler for progress monitoring using the Progress Event of ImGearRecognition Class. The Recognition engine will fire the Progress Event during processing with a ImGearRecProgressEventArgs Class object containing information about the current process. The application can provide progress indication by handling this event. If the event handler sets the Abort Property of ImGearRecProgressEventArgs Class to true, it signals an interruption of the current process. This can be used to provide the application user with a cancel button.
The Process Property of the ImGearRecProgressEventArgs Class object identifies the current process (e.g., DECOMPOSITION, WRITEFOUTDOC, etc.). The Percent Property provides the progress information for the process.
If the current session includes one of the two recognition processes, the ImGearRecStatistics.CharCount Property and RejectedCharCount Property provide the number of recognized and rejected characters up to that point on the page being processed. This feature can be used to alert the user, or even some automatic monitoring code, that recognition accuracy has fallen below some predefined level.