public int GetRotateAngle()
The angle of rotation of this image in degrees. A positive value indicates a counter-clockwise rotation.
This method will return one of the following values:
Value | Description |
---|---|
0 | The image is not rotated. |
90 | The image is rotated 90 degrees (counter-clockwise rotation). |
180 | The image is rotated 180 degrees (upside down). |
270 | The image is rotated 270 degrees (counter-clockwise rotation). |
Use AutoPreprocess with OcrAutoPreprocessPageCommand.Rotate to automatically rotate the page image prior to calling Recognize. This could enhance the quality of the image before starting its recognition.
If the image is rotated, GetRotateAngle returns the angle required to fix the orientation of the page. If you call AutoPreprocess on the page, all subsequent calls to GetRotateAngle will return 0 since the image is not rotated. Hence, you must call GetRotateAngle before calling AutoPreprocess.
Use GetPreprocessValues to obtain the accumulative pre-processing values applied to this IOcrPage.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Ocr;
using Leadtools.Forms.Common;
using Leadtools.Document.Writer;
using Leadtools.WinForms;
using Leadtools.Drawing;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
public void AutoPreprocessExample()
{
string tifFileName = Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif");
string pdfFileName = Path.Combine(LEAD_VARS.ImagesDir, "Clean.pdf");
// Create an instance of the engine
using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD))
{
// Start the engine using default parameters
ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir);
// Create an OCR document
using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument())
{
// Add this image to the document
IOcrPage ocrPage = ocrDocument.Pages.AddPage(tifFileName, null);
// Auto-preprocess it
ocrPage.AutoPreprocess(OcrAutoPreprocessPageCommand.Deskew, null);
ocrPage.AutoPreprocess(OcrAutoPreprocessPageCommand.Invert, null);
ocrPage.AutoPreprocess(OcrAutoPreprocessPageCommand.Rotate, null);
// Recognize it and save it as PDF
ocrPage.Recognize(null);
ocrDocument.Save(pdfFileName, DocumentFormat.Pdf, null);
}
// Shutdown the engine
// Note: calling Dispose will also automatically shutdown the engine if it has been started
ocrEngine.Shutdown();
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS23\Bin\Common\OcrLEADRuntime";
}