Introduction:
A system to compare a reference image of a text character, word or phrase with another image of the character, word or phrase that was rendered by a text rendering engine. Differences between the reference image and the rendered image may be recorded for subsequent analysis. Performance of a text rendering engine producing text according to typographical rules applicable to a natural language can be evaluated by one with no knowledge or ability to read the natural language


COPYRIGHT: Red Hat Inc. 2010

license: this project is under MIT license


AUTHORS:
Lawrence Lim
Satyabrata Maitra
Amanpreet Singh Brar
