public static function run($dataDir = null) { # Initialize an instance of OcrEngine $ocr_engine = new OcrEngine(); # Clear notifier list $ocr_engine->clearNotifies(); # Clear recognition blocks $ocr_engine->getConfig()->clearRecognitionBlocks(); # Add 2 rectangle blocks to user defined recognition blocks $recognitionBlock = new RecognitionBlock(); $ocr_engine->getConfig()->addRecognitionBlock($recognitionBlock->createTextBlock(52, 48, 67, 74)); $ocr_engine->getConfig()->addRecognitionBlock($recognitionBlock->createTextBlock(100, 46, 38, 46)); # Ignore everything else on the image other than the user defined recognition blocks $ocr_engine->getConfig()->setDetectTextRegions(false); # Set Image property by loading an image from file path $imageStream = new ImageStream(); $ocr_engine->setImage($imageStream->fromFile($dataDir . 'ocr.png')); # Run recognition process if ($ocr_engine->process()) { # Retrieve an array of recognized text by parts $text = $ocr_engine->getText()->getPartsInfo(); # Iterate over the text parts $i = 0; while ($i < sizeof($text)) { $info = $text[$i]; # Display part information print "Block: " . (string) $info->getBox() . " Text: " . (string) $info->getText() . PHP_EOL; $i += 1; } } }