差异
- 虽然 Windows 版 ABBYY FineReader Engine API 符合 COM 标准,并且可在任何支持 COM 的开发工具中使用,但 Linux 版本仅提供 C/C++ 原生 API 和 Objective-C 包装器,因此您的应用程序需要使用 C/C++ 或 Objective-C 编写。
- 您需要使用 FREngineAllocString 和 FREngineFreeString 函数处理 string 属性,而不是使用 SysAllocString 或 SysFreeString。
- Windows 和 Linux 平台的分发工具包不同。详见 ABBYY FineReader Engine Distribution Kit。
- InitializeEngine 函数和 SetCurrentLicense 方法的 IsSharedCPUCoresMode 参数会被忽略。
- IEngine::OpenImageFileFromMemory 和 IFRDocument::AddImageFileFromMemory 方法接收两个参数,而不是一个 HGLOBAL 句柄:一个指向内存块的指针,以及一个等于图像大小的 __int64 变量。
- 图像文档和页面版面始终会卸载到磁盘,不能仅保存在内存中:
- IFRDocument::PageFlushingPolicy 属性值会被忽略
- 处理内存图像格式 (Raw、Bitmap、DIB) 的方法尚未实现:IImage::EstimateBitmapSize、IImage::GetBitmap、IEngine::OpenBitmap、IEngine::OpenBitmapBits、IEngine::OpenDib、IEngine::PrepareBitmap、IEngine::PrepareBitmapBits、IEngine::PrepareDib、ITrainingImage::SetBitmapBits。
不支持的功能
- IEngine::ParentWindow, IEngine::ApplicationTitle
- IEngineLoader, InprocLoader, OutprocLoader, IHostProcessControl
- 并行处理 (IEngine::MultiProcessingParams, MultiProcessingParams, MultiProcessingModeEnum, IParallelProcessingCallback)、FineReader Engine Processor 模块 (FREngineModuleEnum::FREM_FREngineProcessor)
- Batch Processor 及相关接口 (BatchProcessor, IImageSource, IFileAdapter, IAsyncProcessingCallback)
- WDP、WIC、DjVu 输入图像格式 (ImageFileFormatEnum 枚举中的 IFF_WdpBw、IFF_WdpGray、IFF_WdpColor、IFF_Wic、IFF_DjVuBw、IFF_DjVuGray、IFF_DjVuColor)
- 打开 Office 格式文件 (OfficeConversionSettings, OfficeConverters, OfficeConvertersTypeEnum, IPrepareImageMode::OfficeConversionSettings, Opening Office Formats 模块)
- 在 Windows 版本中,使用 HGLOBAL 的保存到内存和从内存加载方法:
- 所谓持久性对象的 SaveToMemory、LoadFromMemory 方法
- IImageDocument::SaveToMemory、IEngine::LoadImageDocFromMemory 方法
- IPDFAttachments::AddFromMemory、IPDFAttachment::SaveToMemory
- 扫描:
- IEngine::CreateScanManager, ScanManager
- IScanCallback
- ScanSources, ScanSource, ScanSourceSettings, ScanSourceCapabilities
- ScanSourceApiTypeEnum, ScanRotationAngleEnum, ScanPaperSizeEnum, ScanColorModeEnum, ScanCompressionTypeEnum, ScanBrightnessControlEnum, ScanPaperFeedModeEnum, ScanPauseModeEnum, ScanSourceStatusEnum
- 扫描许可模块
- 网络许可服务:
- ILicensingConnectionRecoveryCallback
- IEngine::SetLicensingConnectionRecoveryCallback
- IEngine::RestartLicensing
- IDictionary::Edit
- IPrepareImageMode::RasterizeFreeText
- 模式训练 GUI:
- IEngine::EditUserPattern
- IRecognizerParams::TrainUserPatterns
- UserPatternsTraining 许可模块
- Visual Components 及相关 FineReader Engine API:
- 自动分析块 (IAutoAnalysisBlock, BlockTypeEnum::BT_AutoAnalysis)
- ILayout::VisualBlocks
- AvailableVisualComponentsFlags 和 ILicense::AvailableVisualComponents
- 特殊的预定义语言目前不可用
