The goal to produce effective Optical Character Recognition (OCR) methods has lead to the development of a number of algorithms. The purpose of these is to take the hand-written or printed text and to translate it into a corresponding digital form. The multitude requirements and developments are well represented in the literature (see for example Abuhaiba [1] and Suen [2]). The primary objective of this paper is to provide an insight into a robust system which has been successfully developed and employed to recognise Latin and Arabic characters and whose workings has been described by the authors in a sister publication [3]. The focus here is to discuss the main components used in the multi-stage system, paying particular attention to the normalisation process used for orientation and size for a given bitmapped character. The effectiveness of the approach is demonstrated through its workings for the Arabic and Latin case, both for characters and numbers.