CellWriterDS is an handwriting recognition library. It is a Nintendo DS porting of Cell Writer, an open source application written by Michael Levin.

The main feature of the library is that it can be trained to recognize every kind of symbol. Training is performed writing new symbol samples directly with the pen. With the standard library are provided samples for numbers, letters and some symbols.

The character writing must be done in a configurable but well defined display area, the cell area.

The integration of the library in any application is very simple: the initialization is performed using the cdwsInit function; the recognition phase starts using the cwdsBeginRecognizeMode function (that allows the definition of the cell area) and continue notifying to the library, using the cwdsNotifyPenDownEvent, cwdsNotifyPenMoveEvent, cwdsNotifyPenUpEvent functions the pen operations within the cell (is the calling program that draw on the display). The recognition phase ends calling the cwdsEndRecognizeMode function, that returns the recognized symbol. It’s all!

The cwds.h header file contains the complete list of available functions.

With the library a demo program is provided, it allows the test of all functions exposed by the library. When the program works in writing mode (default) it is possible to try the recognition functions, enabling or disabling the available symbols; for each character the corrisponding sample and the recognition statistics are displayed. When the program works in training mode it is possible to select a symbol, see the samples defined for it and define new ones.