Search

Atalasoft Knowledge Base

FIX: AbbyyEngine Ignores Some Content (such as tables) (Retired)

Administrator
DotImage

Retired Component Notice

AbbyyEngine was removed from DotImage in 11.3. This article is preserved for historic reference. Customers who had active AbbyyEngine licensing were converted to OmniPageEngine.

For more, please see  INFO: OmniPageEngine - Overview.

Main Article (Preserved)

Atalasoft's implementation of AbbyyEngine OCR engine is tuned to try and avoid getting caught up in particularly "busy" images (when asked to OCR a document that contains not just text but pictures/images as well etc...

However, there are times when you have content you want to force it to read.

The fix is to use the PageLocation event to override AbbyyEngine

// creating new AbbyyEngine instance
AbbyyEngine engine = new AbbyyEngine();

// BEFORE calling engine.Initialize(), set up this handler
engine.PageLocation += engine_PageLocation;

// set any other pre-initialization code here

engine.Initialize();

// NOW you can use the AbbyyEngine as usual
... code here ...

// cleanup when done
engine.ShutDown();
engine.Dispose();

/// this is the engine_PageLocation handler that will convert OcrImageRegion regions into
/// AbbyyOcrTextRegion objects and allow recognition within those formerly ignored regions
private void engine_PageLocation(object sender, OcrPageLocationEventArgs e)
{
    e.RegionsOut = new OcrRegionCollection();
    foreach (OcrRegion ocrRegion in e.RegionsIn)
    {
        e.RegionsOut.Add(ocrRegion is OcrImageRegion
            ? new AbbyyOcrTextRegion(ocrRegion.PolygonBounds)
            : ocrRegion);
    }
}

Original Article

Q10456 - PRB: AbbyyEngine Ignores Some Content (such as tables)

Last Update

2026-10-29 - TD - (Marked as retired)

Details
Last Modified: Last Month
Last Modified By: Tananda
Type: FIX
Article not rated yet.
Article has been viewed 291 times.
Options
Also In This Category