OcrSettingValueType Enumeration (original) (raw)

Summary

Defines a setting type.

Syntax

C#

Objective-C

C++/CLI

Java

Python

[SerializableAttribute()] public enum OcrSettingValueType

typedef NS_ENUM(NSInteger, LTOcrSettingValueType) { LTOcrSettingValueTypeBeginCategory = 0, LTOcrSettingValueTypeEndCategory, LTOcrSettingValueTypeInteger, LTOcrSettingValueTypeEnum, LTOcrSettingValueTypeDouble, LTOcrSettingValueTypeBoolean, LTOcrSettingValueTypeString, };

public enum OcrSettingValueType 

[SerializableAttribute()] public enum class OcrSettingValueType

class OcrSettingValueType(Enum): BeginCategory = 0 EndCategory = 1 Integer = 2 Enum = 3 Double = 4 Boolean = 5 Character = 6 String = 7 Rectangle = 8

Members

Value Member Description
0 BeginCategory Beginning of a new category. This setting has no value.
1 EndCategory End of the current category. This setting has no value.
2 Integer An integer setting.
3 Enum An enum setting.
4 Double A double value setting.
5 Boolean A boolean setting (true or false).
6 Character A character (UNICODE) setting.
7 String A string (UNICODE) setting.
8 Rectangle A LeadRect setting.

Example

using Leadtools; using Leadtools.Codecs; using Leadtools.Ocr; using Leadtools.Document.Writer; public void OcrSettingManagerExample() { // 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); IOcrSettingManager settingManager = ocrEngine.SettingManager; // Dump all the settings supported by this engine to a text file on disk DumpAllSettings(settingManager); // Image file to OCR string tifFileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr1.tif"); // File formats to save DocumentFormat[] formats = { DocumentFormat.Text, DocumentFormat.Pdf }; foreach (DocumentFormat format in formats) { // Generate the output file name string outFileName = Path.ChangeExtension(tifFileName, DocumentWriter.GetFormatFileExtension(format)); Console.WriteLine("Format: {0}\nOutput file: {1}", format, outFileName); int detectFontStyles = 0; bool recognizeFontAttributes = false; if (format == DocumentFormat.Text) { // This is 'text' format, we dont need to recognize fonts attributes such as bold and italic // This will make the recognition process faster Console.WriteLine("Turning off font attributes"); // Save the old settings detectFontStyles = settingManager.GetEnumValue("Recognition.Fonts.DetectFontStyles"); recognizeFontAttributes = settingManager.GetBooleanValue("Recognition.Fonts.RecognizeFontAttributes"); // Turn them off now settingManager.SetEnumValue("Recognition.Fonts.DetectFontStyles", "None"); settingManager.SetBooleanValue("Recognition.Fonts.RecognizeFontAttributes", false); } // Show the settings we are using Console.WriteLine("Recognizing using these font attributes settings:"); Console.WriteLine("Recognition.Fonts.DetectFontStyles: {0}", settingManager.GetEnumValueAsString("Recognition.Fonts.DetectFontStyles")); Console.WriteLine("Recognition.Fonts.RecognizeFontAttributes: {0}", settingManager.GetBooleanValue("Recognition.Fonts.RecognizeFontAttributes")); // Recognize and save the file to the output format using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument()) { // Add a page to the document IOcrPage ocrPage = ocrDocument.Pages.AddPage(tifFileName, null); // Recognize the page // Note, Recognize can be called without calling AutoZone or manually adding zones. The engine will // check and automatically auto-zones the page ocrPage.Recognize(null); // Save the document we have as PDF ocrDocument.Save(outFileName, format, null); } // Re-set the original settings if (format == DocumentFormat.Text) { Console.WriteLine("Resetting original settings"); settingManager.SetEnumValue("Recognition.Fonts.DetectFontStyles", detectFontStyles); settingManager.SetBooleanValue("Recognition.Fonts.RecognizeFontAttributes", recognizeFontAttributes); } } // Shutdown the engine // Note: calling Dispose will also automatically shutdown the engine if it has been started ocrEngine.Shutdown(); } } private static void DumpAllSettings(IOcrSettingManager settingManager) { // Write all the settings into a disk file string settingsFileName = Path.Combine(LEAD_VARS.ImagesDir, "Settings.txt"); using (StreamWriter writer = File.CreateText(settingsFileName)) { writer.WriteLine("Settings"); string[] settingNames = settingManager.GetSettingNames(); foreach (string settingName in settingNames) { IOcrSettingDescriptor sd = settingManager.GetSettingDescriptor(settingName); writer.WriteLine(" Name: {0}", sd.Name); writer.WriteLine(" ValueType: {0}", sd.ValueType); writer.WriteLine(" FriendlyName: {0}", sd.FriendlyName); switch (sd.ValueType) { case OcrSettingValueType.BeginCategory: writer.WriteLine("-------------------------------------"); break; case OcrSettingValueType.Integer: writer.WriteLine(" Units: {0}", sd.Units); writer.WriteLine(" IntegerMinimumValue: {0}", sd.IntegerMinimumValue); writer.WriteLine(" IntegerMaximumValue: {0}", sd.IntegerMaximumValue); break; case OcrSettingValueType.Enum: writer.WriteLine(" EnumIsFlags: {0}", sd.EnumIsFlags); writer.WriteLine(" EnumMemberFriendlyNames"); { int[] values = sd.GetEnumMemberValues(); string[] names = sd.GetEnumMemberFriendlyNames(); for (int i = 0; i < values.Length; i++) { writer.WriteLine(" {0} : {1}", names[i], values[i]); } } break; case OcrSettingValueType.Double: writer.WriteLine(" Units: {0}", sd.Units); writer.WriteLine(" DoubleMinimumValue: {0}", sd.DoubleMinimumValue); writer.WriteLine(" DoubleMaximumValue: {0}", sd.DoubleMaximumValue); break; case OcrSettingValueType.Boolean: break; case OcrSettingValueType.Character: break; case OcrSettingValueType.String: writer.WriteLine(" StringMaximumLength: {0}", sd.StringMaximumLength); writer.WriteLine(" StringNullAllowed: {0}", sd.StringNullAllowed); break; case OcrSettingValueType.Rectangle: break; case OcrSettingValueType.EndCategory: break; default: break; } } } } static class LEAD_VARS { public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS22\Bin\Common\OcrLEADRuntime"; }