60 lines
2.0 KiB
C++
60 lines
2.0 KiB
C++
#ifndef __HGOCRHANVON_HPP__
|
|
#define __HGOCRHANVON_HPP__
|
|
|
|
#include "HGOCRBase.hpp"
|
|
#include "../base/HGDef.h"
|
|
#include "../base/HGInc.h"
|
|
#include "../base/HGImage.h"
|
|
#include "../base/HGDll.h"
|
|
#include "hanwangOCRdetect.h"
|
|
#include <vector>
|
|
#include <string>
|
|
|
|
class HGOCRHanvon : public HGOCRBase
|
|
{
|
|
public:
|
|
HGOCRHanvon();
|
|
virtual ~HGOCRHanvon();
|
|
|
|
HGResult Init();
|
|
HGResult Deinit();
|
|
HGResult ImageOCR(HGImage image, class HGOCRRetImpl **ocrRet);
|
|
HGResult ImageOCRToFile(HGImage image, HGUInt outType, const HGChar *outFileName);
|
|
HGResult ImageTextDirectOCR(HGImage image, HGUInt* direct);
|
|
HGResult AddToImageList(HGImage image);
|
|
HGResult ClearImageList();
|
|
HGResult ImageListOCRToFile(HGUInt outType, const HGChar* outFileName, HGImageListOcrFunc func, HGPointer param);
|
|
|
|
private:
|
|
int HWOCR_SDKInitialize(void** ppstOcrHandle);
|
|
void HWOCR_SDKExit(void* pstOcrHandle);
|
|
void HWOCR_InitPdf();
|
|
void HWOCR_ExitPdf();
|
|
int HWOCR_RecognizeFile2Str(unsigned char* ImgFile, void* pstHandle, char** ppRst, int* pnLen);
|
|
void HWOCR_FreeStrRst(char** ppRst);
|
|
int HWOCR_RecognizeFile(unsigned char* ImgFile, unsigned char* OutFile, int nFileType, void* pstHandle, char* pLibDir, char* pTmpDir);
|
|
int HWOCR_GetFileDirect(unsigned char* ImgFile, void* pstHandle, int* pDirect);
|
|
#if defined(HG_CMP_MSC)
|
|
int HWOCR_RecognizeFileBatch(char** ppImageFiles, unsigned char* OutFile, int nFileType, void* pstHandle, char* pLibDir, char* pTmpDir,
|
|
HWOCR_RecogProgress aFuncRecogProgress, HWOCR_IsCanceled aFuncIsCanceled);
|
|
#else
|
|
int HWOCR_RecognizeFileBatch(char** ppImageFiles, unsigned char* OutFile, int nFileType, void* pstHandle, char* pLibDir, char* pTmpDir);
|
|
#endif
|
|
|
|
#if defined(HG_CMP_MSC)
|
|
static int RecogProgress(int nPercent);
|
|
static int IsCanceled();
|
|
#endif
|
|
|
|
private:
|
|
//static HGUInt m_refCount;
|
|
//static HGOCRHanvon* m_OCR;
|
|
HGDll m_dll;
|
|
void* m_ocrHandle;
|
|
std::vector<std::string> m_imageList;
|
|
HGImageListOcrFunc m_func;
|
|
HGPointer m_param;
|
|
//HGInt m_FuncRet;
|
|
};
|
|
|
|
#endif /* __HGOCRHANVON_HPP__ */ |