next up previous contents index
Next: About this document Up: libGOCR API GNU Optical Previous: Contents   Contents   Index

Introduction

GOCR is an attempt to fulfill a large gap in the Linux world: the lack of an OCR program. At the time the project started, there were some available, but their quality was very deceptive. Licensed using the LGPL license, it can be used by anyone.

As of the 0.3.x versions, it was decided that gocr, until then a stand-alone program, should become a library. I (Bruno) decided then to be responsible for it, and this is the result. I hope I made a good work, or at least something that's quite usable.

This documentation covers three different views on the API, which are the layers it's subdivided. First, there's the GOCR frontend API itself, which allows you to write a program that uses the library to do some OCRing. It's a small set of functions that allow you to decide what operations should be done, and in what order, and to tune some of the attributes of the library. Second, there's the module interface. GOCR library let you write new pieces of code or to complement the existing ones without recompiling; we call these pieces modules, but many other programs call them plugins. It's just nomenclature. This API is fully independent of the first one, and has a completely different functionality. Last, but not least, is the internal GOCR API. You don't need to know what it is, or even that it exists, but it's what joins the two first API's, all the modules you're using, the program you wrote, and makes it all work together, or not. It's GOCR itself, and you only want to know about it if you want to develop GOCR.

With the API, there is the possibility of writing wrappers, or bindings, to other languages. C++ and Python are on the list, and soon will be available.

This document was written not only as a reference, but as a tutorial too; the language is light, a handful of jokes are spread around, etc. The code is well documented, and automatic documentation, man pages, etc, can be generated using Doxygen.



Subsections
next up previous contents index
Next: About this document Up: libGOCR API GNU Optical Previous: Contents   Contents   Index
root 2002-02-17