Data for the IOcrEngine.RuntimeFileCallback callback.
public class OcrRuntimeFile public:ref class OcrRuntimeFile
class OcrRuntimeFile: Refer to IOcrEngine.RuntimeFileCallback for more information.
using Leadtools;using Leadtools.Codecs;using Leadtools.Ocr;using Leadtools.Document.Writer;public static void OcrRuntimeFileCallbackExample(){// This example assumes that some or all of the OCR runtime files are copied into "C:\MyDir" folder and simulates// an environment where the runtime files can be obtained through helper methods HasResource and GetResourceStream.// Create an OCR engine instanceIOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD);// Install a OCR file runtime handlerocrEngine.RuntimeFileCallback = MyRuntimeFileCallback;// Startup the engineocrEngine.Startup(null, null, null,null /* startupParameters is null*/);// Perform OCR operationocrEngine.AutoRecognizeManager.Run(@"C:\LEADTOOLS22\Resources\Images\ocr1.tif",@"C:\LEADTOOLS22\Resources\Images\out.pdf",DocumentFormat.Pdf,null,null);// ShutdownocrEngine.Shutdown();// Remove the handlerocrEngine.RuntimeFileCallback = null;// Dispose the engineocrEngine.Dispose();}private static RasterExceptionCode MyRuntimeFileCallback(IOcrEngine engine, OcrRuntimeFile runtimeFile){// Called by the OCR engine for each runtime file operationRasterExceptionCode result = RasterExceptionCode.Success;// Check the operation:switch (runtimeFile.Mode){case OcrRuntimeFileMode.Exists:Debug.WriteLine($"MyRuntimeFileCallback does '{runtimeFile.FileName}' exist");// The engine is checking if a certain file exists, call our HasResource helperif (!HasResource(runtimeFile.FileName))result = RasterExceptionCode.FileNotFound;break;case OcrRuntimeFileMode.Open:Debug.WriteLine($"MyRuntimeFileCallback open '{runtimeFile.FileName}'");// The engine requested to open the file for reading, call our GetResourceStream helper// and set the Stream property accordinglyruntimeFile.Stream = GetResourceStream(runtimeFile.FileName);break;case OcrRuntimeFileMode.Close:Debug.WriteLine($"MyRuntimeFileCallback close '{runtimeFile.FileName}'");// The engine requested to close the file after reading.// Dispose our streamruntimeFile.Stream.Dispose();break;}return result;}private static bool HasResource(string resourceName){// Do we have this resource?// In our simulation, we will simply check if the file exist on disk// In an Android application, this can check if a resource with this name was embeddedreturn System.IO.File.Exists(Path.Combine(@"C:\MyDir", resourceName));}private static Stream GetResourceStream(string resourceName){// Get a stream that can read from resource// In our simulation, we will simply check if the file exist on disk// In an Android application, this can call the appropriate platform API to obtain// a stream to the resourcereturn System.IO.File.OpenRead(Path.Combine(@"C:\MyDir", resourceName));}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
