/// <summary> /// OCR終了処理 /// </summary> /// <param name="env">OCR実行環境</param> public void ocrExecuteEnd() { OcrExecuteEnv env = this._env; if (env == null) { return; } IHocrSDKComponent hocrSdk = HocrSDKInterface.HocrSDKFactory.GetHocrSDK(); IJocrSDKComponent jocrSdk = JocrSDKInterface.JocrSDKFactory.GetJocrSDK(); // パターン辞書登録解除 hocrSdk.CancelPatternDict(env.hocrLibHandle, env.hocrEnvHandle, env.hocrPatDictHandle); jocrSdk.CancelLangDict(env.jocrLibHandle, env.jocrEnvHandle, env.jocrLangDictHandle); jocrSdk.CancelPatternDict(env.jocrLibHandle, env.jocrEnvHandle, env.jocrPatDictHandle); // パターン辞書アンロード hocrSdk.UnloadPatternDict(env.hocrLibHandle, env.hocrPatDictHandle); jocrSdk.UnloadLangDict(env.jocrLibHandle, env.jocrLangDictHandle); jocrSdk.UnloadPatternDict(env.jocrLibHandle, env.jocrPatDictHandle); // 実行環境クローズ hocrSdk.CloseExecEnv(env.hocrLibHandle, env.hocrEnvHandle); jocrSdk.CloseExecEnv(env.jocrLibHandle, env.jocrEnvHandle); // ライブラリーの終了処理 hocrSdk.End(env.hocrLibHandle); jocrSdk.End(env.jocrLibHandle); }
/// <summary> /// OCR開始処理 /// </summary> /// <returns>OCR実行環境</returns> public OcrExecuteEnv ocrExecuteBegin() { IHocrSDKComponent hocrSdk = HocrSDKInterface.HocrSDKFactory.GetHocrSDK(); IJocrSDKComponent jocrSdk = JocrSDKInterface.JocrSDKFactory.GetJocrSDK(); JocrSDKInterface.JocrSDKConfig config = new JocrSDKInterface.JocrSDKConfig(); config.langDictTemplate[0] = Config.GetJocrLangDictPath(); config.patternDictTemplate[0] = Config.GetJocrPatternDictPath(); config.langDictTemplate[1] = config.langDictTemplate[2] = null; config.patternDictTemplate[1] = config.patternDictTemplate[2] = null; OcrExecuteEnv env = new OcrExecuteEnv(); // ライブラリーの開始処理 env.hocrLibHandle = hocrSdk.Begin(); env.jocrLibHandle = jocrSdk.Begin(config); // 実行環境オープン env.hocrEnvHandle = hocrSdk.OpenExecEnv(env.hocrLibHandle, HocrSDKEnvType.OCR_HCR); env.jocrEnvHandle = jocrSdk.OpenExecEnv(env.jocrLibHandle, JocrSDKCrType.OCR_JCR); // 辞書ロード hocrSdk.LoadPatternDict(env.hocrLibHandle, Config.GetHocrPatternDictPath()); jocrSdk.LoadPatternDict(env.jocrLibHandle, config.patternDictTemplate[0]); jocrSdk.LoadLangDict(env.jocrLibHandle, config.langDictTemplate[0]); // 辞書ハンドル取得と登録 env.hocrPatDictHandle = hocrSdk.GetDictHandle(env.hocrLibHandle, Config.GetHocrPatternDictPath()); hocrSdk.RegisterPatternDict(env.hocrLibHandle, env.hocrEnvHandle, env.hocrPatDictHandle); env.jocrPatDictHandle = jocrSdk.GetDictHandle(env.jocrLibHandle, config.patternDictTemplate[0]); jocrSdk.RegisterPatternDict(env.jocrLibHandle, env.jocrEnvHandle, env.jocrPatDictHandle); env.jocrLangDictHandle = jocrSdk.GetDictHandle(env.jocrLibHandle, config.langDictTemplate[0]); jocrSdk.RegisterLangDict(env.jocrLibHandle, env.jocrEnvHandle, env.jocrLangDictHandle); return(env); }