I am using Tesseract OCR engine for our inhouse software OCR needs - mainly from scanned PDF's or PDF files printed as bitmaps. Developed VB6 frontend for that purpose, which extracts raster image from pdf pages and calls tesseract engine.

Tesseract is quite good OCR engine, but fails miserably (as many other OCR engines), when text orientation is vertical, fex. landscape pages scanned in portrait mode. There are several page segmentation settings, but it is quite difficult to automate text orientation detection in raster images.

Windows 10 has inbuilt OCR engine, but not tested this yet.
https://blogs.windows.com/buildingap...or-windows-10/