←选择平台

IOcrSettingManager接口

总结
管理底层引擎特定的设置IOcrEngine
语法
c#
VB
objective - c
c++
Java
公共接口IOcrSettingManager
公共接口IOcrSettingManager
@接口LTOcrSettingManager: NSObject
公共OcrSettingManager
公共接口IOcrSettingManager
讲话

访问的实例IOcrSettingManager使用IOcrEngine通过IOcrEngine.SettingManager财产。

IOcrSettingManager允许您执行以下操作:

  • 获取和设置底层引擎特定的设置。IOcrEngine为不同的OCR引擎是一个包装器。这些引擎包含额外的特定的特性和功能,可以使用查询和更新IOcrSettingManager接口。
  • 加载和保存引擎设置。一旦你建立了OCR引擎,重用这些设置通过发动机状态保存到内存或磁盘上的XML文件。你可以稍后重新加载这些设置和使用它们的相同或不同的实例IOcrEngine

使用的不同方法IOcrSettingManager接口来获取和设置引擎特定的设置。每个环境都有一个唯一的名称(字符串值)。获得所有可用的设置当前OCR引擎通过GetSettingNames方法。的GetSettingDescriptor方法返回设置的描述(类型、友好的名称和值范围)。然后,您可以使用get和set方法的各种查询和改变特定设置的值。例如,如果设置类型OcrSettingValueType.Integer,你可以使用GetIntegerValue得到的当前值和设置SetIntegerValue改变它的值。请参考下面的例子一个完整的演示。

该接口还包含的方法来加载和发动机状态保存到. net流或磁盘上的XML文件。下表列出了所有美国保存:

部分 成员
IOcrSettingManager(通过IOcrEngine.SettingManager 所有的设置为通过IOcrSettingManager.GetSettingNames
IOcrLanguageManager(通过IOcrEngine.LanguageManager 的价值IOcrLanguageManager.GetEnabledLanguages
IOcrSpellCheckManager(通过IOcrEngine.SpellCheckManager 的值IOcrSpellCheckManager.SpellCheckEngineIOcrSpellCheckManager.SpellLanguage
IOcrDocumentManager(通过IOcrEngine.DocumentManager 的值IOcrDocumentManager.EngineFormat,IOcrDocumentManager.RejectionSymbolIOcrDocumentManager.MissingSymbol
IOcrZoneManager(通过IOcrEngine.ZoneManager 的值IOcrZoneManager.OmrOptions.FrameDetectionMethod,IOcrZoneManager.OmrOptions.Sensitivity和国家的特点IOcrZoneManager.OmrOptions.GetStateRecognitionCharacter

你必须调用IOcrEngine.Startup您可以使用之前的方法IOcrEngine.SettingManager财产。

注意:IOcrEngine.LanguageManagerIOcrEngine.SpellCheckManager状态也保存当引擎设置保存。有关更多信息,请参考IOcrSettingManager.Save

为支持引擎特定设置的列表及其含义,请参考OCR引擎特定的设置

例子

这个例子将启动LEADTOOLS OCR模块-铅引擎。显示所有设置的值,改变其中的一些。

c#
VB
使用Leadtools;使用Leadtools.Codecs;使用Leadtools.Ocr;使用Leadtools.Document.Writer;公共无效OcrSettingManagerExample (){/ /创建一个实例的引擎使用(IOcrEngine ocrEngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD)){/ /启动引擎使用默认参数ocrEngine.Startup (,,,LEAD_VARS.OcrLEADRuntimeDir);IOcrSettingManager settingManager = ocrEngine.SettingManager;/ /转储引擎支持的所有设置到一个文本文件在磁盘上DumpAllSettings (settingManager);/ / OCR图像文件字符串tifFileName = Path.Combine (LEAD_VARS.ImagesDir,“Ocr1.tif”);/ /文件格式保存= {DocumentFormat DocumentFormat[]格式。文本,DocumentFormat。Pdf};foreach(DocumentFormat格式格式){/ /生成输出文件的名字字符串outFileName =路径。ChangeExtension (tifFileName DocumentWriter.GetFormatFileExtension(格式));Console.WriteLine (“格式:{0}\ nOutput文件:{1}”、格式、outFileName);intdetectFontStyles = 0;boolrecognizeFontAttributes =;如果(格式= = DocumentFormat.Text){/ /这是“文本”格式,我们不需要认识到字体属性,如粗体和斜体/ /这将使识别过程更快Console.WriteLine (“关掉字体属性”);/ /保存旧的设置detectFontStyles = settingManager.GetEnumValue (“Recognition.Fonts.DetectFontStyles”);recognizeFontAttributes = settingManager.GetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”);/ /关闭它们settingManager.SetEnumValue (“Recognition.Fonts.DetectFontStyles”,“没有”);settingManager.SetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”,);}/ /显示我们正在使用的设置Console.WriteLine (“认识到使用这些字体属性设置:“);Console.WriteLine (“Recognition.Fonts。DetectFontStyles: {0}”settingManager.GetEnumValueAsString (“Recognition.Fonts.DetectFontStyles”));Console.WriteLine (“Recognition.Fonts。RecognizeFontAttributes: {0}”settingManager.GetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”));/ /识别和保存文件的输出格式使用(IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument ()){/ /页面添加到文档中IOcrPage ocrPage = ocrDocument.Pages.AddPage (tifFileName,);/ /识别页面/ /注意,识别可以被称为没有调用AutoZone或手动添加区域。发动机将/ /检查和自动auto-zones页面ocrPage.Recognize ();/ /保存文件为PDFocrDocument。保存(outFileName、格式、);}/ /重新设定初始设置如果(格式= = DocumentFormat.Text){Console.WriteLine (“重置初始设置”);settingManager.SetEnumValue (“Recognition.Fonts.DetectFontStyles”,detectFontStyles);settingManager.SetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”,recognizeFontAttributes);}}/ /关闭引擎/ /注意:调用处理也会自动关闭发动机如果它已经启动ocrEngine.Shutdown ();}}私人静态无效DumpAllSettings (IOcrSettingManager settingManager){/ /写所有设置到一个磁盘文件中字符串settingsFileName = Path.Combine (LEAD_VARS.ImagesDir,“Settings.txt”);使用(StreamWriter作家= File.CreateText (settingsFileName)){writer.WriteLine (“设置”);字符串[]settingNames = settingManager.GetSettingNames ();foreach(字符串settingNamesettingNames){IOcrSettingDescriptor sd = settingManager.GetSettingDescriptor (settingName);writer.WriteLine (“名字:{0}”,sd.Name);writer.WriteLine (“ValueType: {0}”,sd.ValueType);writer.WriteLine (“FriendlyName: {0}”,sd.FriendlyName);开关(sd.ValueType){情况下OcrSettingValueType.BeginCategory:writer.WriteLine (“- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -”);打破;情况下OcrSettingValueType.Integer:writer.WriteLine (“单位:{0}”,sd.Units);writer.WriteLine (“IntegerMinimumValue: {0}”,sd.IntegerMinimumValue);writer.WriteLine (“IntegerMaximumValue: {0}”,sd.IntegerMaximumValue);打破;情况下OcrSettingValueType.Enum:writer.WriteLine (“EnumIsFlags: {0}”,sd.EnumIsFlags);writer.WriteLine (“EnumMemberFriendlyNames”);{int[]值= sd.GetEnumMemberValues ();字符串[]= sd.GetEnumMemberFriendlyNames名字();(int我= 0;我< values.Length;我+ +){writer.WriteLine (“{0}:{1}”[我],名称,值[我]);}}打破;情况下OcrSettingValueType.Double:writer.WriteLine (“单位:{0}”,sd.Units);writer.WriteLine (“DoubleMinimumValue: {0}”,sd.DoubleMinimumValue);writer.WriteLine (“DoubleMaximumValue: {0}”,sd.DoubleMaximumValue);打破;情况下OcrSettingValueType.Boolean:打破;情况下OcrSettingValueType.Character:打破;情况下OcrSettingValueType.String:writer.WriteLine (“StringMaximumLength: {0}”,sd.StringMaximumLength);writer.WriteLine (“StringNullAllowed: {0}”,sd.StringNullAllowed);打破;情况下OcrSettingValueType.Rectangle:打破;情况下OcrSettingValueType.EndCategory:打破;默认的:打破;}}}}静态LEAD_VARS{公共常量字符串ImagesDir =@“C: \ LEADTOOLS21 \ Resources \图片”;公共常量字符串OcrLEADRuntimeDir =@“C: \ LEADTOOLS21 \ Bin \常见\ OcrLEADRuntime”;}
进口Leadtools进口Leadtools.Codecs进口Leadtools.Ocr进口Leadtools.Document.Writer公共OcrSettingManagerExample ()创建一个实例的引擎使用ocrEngine作为IOcrEngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD)“启动引擎使用默认参数ocrEngine.Startup (没有什么,没有什么,没有什么LEAD_VARS.OcrLEADRuntimeDir)昏暗的settingManager作为IOcrSettingManager = ocrEngine.SettingManager转储所有支持的设置这台发动机到一个文本文件在磁盘上DumpAllSettings (settingManager)OCR的图像文件昏暗的tifFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Ocr1.tif”)保存的文件格式昏暗的格式作为= {DocumentFormat DocumentFormat ()。文本,DocumentFormat.Pdf}每一个格式作为DocumentFormat格式“生成输出文件的名字昏暗的outFileName作为字符串=路径。ChangeExtension (tifFileName DocumentWriter.GetFormatFileExtension(格式)Console.WriteLine (“格式:{0}”& vbLf &“输出文件:{1}”、格式、outFileName)昏暗的detectFontStyles作为整数= 0昏暗的recognizeFontAttributes作为布尔=如果格式= DocumentFormat.Text然后”这是“文本”格式,我们不需要认识到字体属性,如粗体和斜体“这将使识别过程更快Console.WriteLine (“关掉字体属性”)“保存旧的设置detectFontStyles = settingManager.GetEnumValue (“Recognition.Fonts.DetectFontStyles”)recognizeFontAttributes = settingManager.GetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”)“现在关闭它们settingManager.SetEnumValue (“Recognition.Fonts.DetectFontStyles”,“没有”)settingManager.SetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”,)结束如果“我们正在使用的设置Console.WriteLine (“认识到使用这些字体属性设置:“)Console.WriteLine (“Recognition.Fonts。DetectFontStyles: {0}”,settingManager.GetEnumValueAsString (“Recognition.Fonts.DetectFontStyles”))Console.WriteLine (“Recognition.Fonts。RecognizeFontAttributes: {0}”,settingManager.GetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”))的识别和保存文件的输出格式使用ocrDocument作为IOcrDocument = ocrEngine.DocumentManager.CreateDocument ()”页面添加到文档中昏暗的ocrPage作为IOcrPage = ocrDocument.Pages.AddPage (tifFileName,没有什么)“认识到页面“注意,识别可以被称为没有调用AutoZone或手动添加区。发动机将的检查和自动auto-zones页面ocrPage.Recognize (没有什么)“拯救我们PDF文档ocrDocument。保存(outFileName、格式、没有什么)结束使用“重新设定初始设置如果格式= DocumentFormat.Text然后Console.WriteLine (“重置初始设置”)settingManager.SetEnumValue (“Recognition.Fonts.DetectFontStyles”detectFontStyles)settingManager.SetBooleanValue (“Recognition.Fonts.RecognizeFontAttributes”recognizeFontAttributes)结束如果下一个“关闭发动机注意:调用处理也将自动关闭发动机如果它已经启动ocrEngine.Shutdown ()结束使用结束私人共享DumpAllSettings (settingManager作为IOcrSettingManager)所有的设置写入磁盘文件中昏暗的settingsFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Settings.txt”)使用作家作为StreamWriter = File.CreateText (settingsFileName)writer.WriteLine (“设置”)昏暗的settingNames作为字符串()= settingManager.GetSettingNames ()每一个settingName作为字符串settingNames昏暗的sd作为IOcrSettingDescriptor = settingManager.GetSettingDescriptor (settingName)writer.WriteLine (“名字:{0}”sd.Name)writer.WriteLine (“ValueType: {0}”sd.ValueType)writer.WriteLine (“FriendlyName: {0}”sd.FriendlyName)选择情况下sd.ValueType情况下OcrSettingValueType.BeginCategorywriter.WriteLine (“- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -”)退出选择情况下OcrSettingValueType。整数]writer.WriteLine (“单位:{0}”sd.Units)writer.WriteLine (“IntegerMinimumValue: {0}”sd.IntegerMinimumValue)writer.WriteLine (“IntegerMaximumValue: {0}”sd.IntegerMaximumValue)退出选择情况下OcrSettingValueType。枚举]writer.WriteLine (“EnumIsFlags: {0}”sd.EnumIsFlags)writer.WriteLine (“EnumMemberFriendlyNames”)如果真正的然后昏暗的作为整数()= sd.GetEnumMemberValues ()昏暗的的名字作为字符串()= sd.GetEnumMemberFriendlyNames ()作为整数= 0值。长度- 1writer.WriteLine (“{0}:{1}”名称(i),值(i))下一个结束如果退出选择情况下OcrSettingValueType。]writer.WriteLine (“单位:{0}”sd.Units)writer.WriteLine (“DoubleMinimumValue: {0}”sd.DoubleMinimumValue)writer.WriteLine (“DoubleMaximumValue: {0}”sd.DoubleMaximumValue)退出选择情况下OcrSettingValueType。布尔]退出选择情况下OcrSettingValueType.Character退出选择情况下OcrSettingValueType。字符串]writer.WriteLine (“StringMaximumLength: {0}”sd.StringMaximumLength)writer.WriteLine (“StringNullAllowed: {0}”sd.StringNullAllowed)退出选择情况下OcrSettingValueType.Rectangle退出选择情况下OcrSettingValueType.EndCategory退出选择情况下其他的退出选择结束选择下一个结束使用结束公共NotInheritableLEAD_VARS公共常量ImagesDir作为字符串=“C: \ LEADTOOLS21 \ Resources \图片”公共常量OcrLEADRuntimeDir作为字符串=“C: \ LEADTOOLS21 \ Bin \常见\ OcrLEADRuntime”结束
需求

目标平台

Leadtools.Ocr作为sembly
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。